問題10885について
- フォーラムは新サイトへ移行しました。
- このフォーラムではゲスト投稿が禁止されています
問題10885について
msg# 1
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)から始まっているのですが、これは何故正解なのでしょうか?
皆様ご教授お願い申し上げます。
以下の「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)から始まっているのですが、これは何故正解なのでしょうか?
皆様ご教授お願い申し上げます。
Re: 問題10885について
msg# 1.1
arashi1977
居住地: 広島
投稿数: 1715
ヒントです。
どこかに^はあるでしょうか?
どこかに^はあるでしょうか?
Re: Re: 問題10885について
msg# 1.2
nvoia
投稿数: 11
^は見当たりません。つまり1が最初に来ると思うのですが。これ以上のことは現在分かりません。ご不便をおかけしますが、もう少し教えて頂けないでしょうか?宜しくお願い致します。
Re: 問題10885について
msg# 1.3
arashi1977
居住地: 広島
投稿数: 1715
> ^は見当たりません
問題ID:10885の解説を読んでいますか?
正規表現の主な例として「.」も「^」も記載がありますよ。
また、「任意の1文字」を含めた“検索対象文字列”について誤解があるようです。
以前の「問題10865 について」の時と同じことですが
引用:の通り、「先頭からチェック」するわけではなく、「検索文字列と同じ文字列」が対象となるんですよ。
問題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
のように置換されません。
Re: Re: 問題10885について
msg# 1.3.1
nvoia
投稿数: 11
arashi1977 様
お世話になります。
さっそく本題なんですが、
「1234.」は「文字列1234の後に任意の1文字」を意味します。
このパターンの文字列を含む行は「12344」「123445」「0123499」と解説にありますが、これは完全一致していなくても、部分一致すればいいことだと理解しています。もし私の理解が違っていれば、助言宜しくお願い致します。
しかしながら、最初のヒントの”どこかに^はあるでしょうか?の意図がよく理解できません。確かに解説の一覧にあるのですが。どのような意図があったのかご教授して頂ければ、幸いです。
お世話になります。
さっそく本題なんですが、
「1234.」は「文字列1234の後に任意の1文字」を意味します。
このパターンの文字列を含む行は「12344」「123445」「0123499」と解説にありますが、これは完全一致していなくても、部分一致すればいいことだと理解しています。もし私の理解が違っていれば、助言宜しくお願い致します。
しかしながら、最初のヒントの”どこかに^はあるでしょうか?の意図がよく理解できません。確かに解説の一覧にあるのですが。どのような意図があったのかご教授して頂ければ、幸いです。
Re: Re: 問題10885について
msg# 1.3.1.1
arashi1977
居住地: 広島
投稿数: 1715
nvoia さん
引用:
間違ってないですよ!それで大丈夫です!
私の「ヒント」もちょっと意味が分かりにくかったですかね。
これより上のところで
引用:や
引用:という発言があったので、私としては「あぁ、行の先頭に検索文字列がない場合が検索結果に出てくるのがなぜか?で詰まってるのかな 」と思ったので
『(設問の)どこかに(正規表現での「行頭」を意味する)^(の記載)がありますか?(無いので、行頭の1にこだわらないでいいんですよ )』
というつもりで書いていました。
引用:
「1234.」は「文字列1234の後に任意の1文字」を意味します。
このパターンの文字列を含む行は「12344」「123445」「0123499」と解説にありますが、これは完全一致していなくても、部分一致すればいいことだと理解しています。
間違ってないですよ!それで大丈夫です!
私の「ヒント」もちょっと意味が分かりにくかったですかね。
これより上のところで
引用:
'1234.'と(1)から始まっているにも関わらず、0123499は(0)から始まっているのですが、これは何故正解なのでしょうか?
引用:
つまり1が最初に来ると思うのですが。
『(設問の)どこかに(正規表現での「行頭」を意味する)^(の記載)がありますか?(無いので、行頭の1にこだわらないでいいんですよ )』
というつもりで書いていました。