ほぼ全ての機能を新サイトへ移行しました

問題10885について

  • フォーラムは新サイトへ移行しました。
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 | 投稿日時 2013-6-12 18:07
nvoia  常連   投稿数: 11
下記のような問題があります、。

以下の「test.txt」ファイルに対して、「grep '1234.' test.txt」コマンドを実行した時に出力される行はどれか。(全て選択)

$ cat test.txt
123
1223
1233
12344
123445
0123499

この解答は、12344,123445,0123499です。
'1234.'(.)”は任意の1文字です。123445,0123499は文字数をオーバしているのですが、なぜ正解なのでしょうか?
また'1234.'と(1)から始まっているにも関わらず、0123499は(0)から始まっているのですが、これは何故正解なのでしょうか?
皆様ご教授お願い申し上げます。
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2013-6-12 23:54
arashi1977  長老 居住地: 広島  投稿数: 1715
ヒントです。
どこかに^はあるでしょうか?
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2013-6-13 9:11 | 最終変更
nvoia  常連   投稿数: 11
^は見当たりません。つまり1が最初に来ると思うのですが。これ以上のことは現在分かりません。ご不便をおかけしますが、もう少し教えて頂けないでしょうか?宜しくお願い致します。
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2013-6-13 10:55
arashi1977  長老 居住地: 広島  投稿数: 1715
> ^は見当たりません

問題ID:10885の解説を読んでいますか?
正規表現の主な例として「.」も「^」も記載がありますよ。

また、「任意の1文字」を含めた“検索対象文字列”について誤解があるようです。
以前の「問題10865 について」の時と同じことですが
引用:
sed s/ab/AB/g test.txtが何故正解ではないのか理解できました。

a b ab
a b ab
a b ab
から
a b AB
a b AB
a b AB
と置換されます。
A B AB
A B AB
A B AB
のように置換されません。
の通り、「先頭からチェック」するわけではなく、「検索文字列と同じ文字列」が対象となるんですよ。
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2013-6-13 15:10
nvoia  常連   投稿数: 11
arashi1977 様

お世話になります。
さっそく本題なんですが、
「1234.」は「文字列1234の後に任意の1文字」を意味します。
このパターンの文字列を含む行は「12344」「123445」「0123499」と解説にありますが、これは完全一致していなくても、部分一致すればいいことだと理解しています。もし私の理解が違っていれば、助言宜しくお願い致します。

しかしながら、最初のヒントの”どこかに^はあるでしょうか?の意図がよく理解できません。確かに解説の一覧にあるのですが。どのような意図があったのかご教授して頂ければ、幸いです。
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2013-6-13 16:52
arashi1977  長老 居住地: 広島  投稿数: 1715
nvoia さん

引用:
「1234.」は「文字列1234の後に任意の1文字」を意味します。
このパターンの文字列を含む行は「12344」「123445」「0123499」と解説にありますが、これは完全一致していなくても、部分一致すればいいことだと理解しています。

間違ってないですよ!それで大丈夫です!

私の「ヒント」もちょっと意味が分かりにくかったですかね。
これより上のところで
引用:
'1234.'と(1)から始まっているにも関わらず、0123499は(0)から始まっているのですが、これは何故正解なのでしょうか?

引用:
つまり1が最初に来ると思うのですが。
という発言があったので、私としては「あぁ、行の先頭に検索文字列がない場合が検索結果に出てくるのがなぜか?で詰まってるのかな 」と思ったので
『(設問の)どこかに(正規表現での「行頭」を意味する)^(の記載)がありますか?(無いので、行頭の1にこだわらないでいいんですよ )』
というつもりで書いていました。

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.
ログイン
ユーザ名 or E-Mailアドレス:

パスワード:







プレミアムコンテンツ

受験チケット(割引)

Contact

LPI-Japan Logo

LPI Logo