理解力検査の問題/.*/

理解力検査の問題/.*/

本に書かれた内容を理解するのが難しいです/.*/。これにより、フルテキスト行が印刷されます。これは.すべての文字を意味し、先頭の文字*が0回以上表示されることを意味します。だから私は/.*/そのようなものを探したいと思います。rrr qqqq abbbbbつまり、単一文字の連続した繰り返しを意味します。

しかし、それはそうすることではありません。なぜ?

私の2番目の質問は:なぜ/.+/同じことをしないのですか?テキストでの私の試みの結果は次のとおりです。?

ベストアンサー1

いいえ、*in は.*「以前のランダム数」を意味します。表現する"は、式に一致するすべての型のゼロ文字以上です.

これは、一致するすべての文字も.*一致することを意味します。許可するので、空行にも一致します。aaaaabcdabcd.若いマッチ。

次を含む行を見つけるには繰り返す自然、用途

/\(.\)\1\1*/

この表現は「すべての文字と一致します。同じ役割、そして同じ文字の数"です\1*ただ繰り返される文字、この場合、次のように行の先頭と末尾に式を固定する必要があります。

/^\(.\)\1\1*$/

編集者edサポート基本的なよく使われる表現。修飾子+拡大する正規表現修飾子。エラー解決が有効な状態でこのコマンドを使用すると?(またはGNUで)表示されます。これは、前に他の文字を含む行を探そうとするためです。ed/.+/no matchNo matchedH+

拡張.+正規表現 (「1 つ以上のランダム文字一致」) は、..*「1 文字に一致し、0 個以上のランダム文字に一致する」デフォルトの正規表現と同じです。

~によるとそのマニュアル、GNUは正規表現をedサポートする必要があるため、同等ですが、私のOpenBSDシステムのGNU 1.14.2はこれを行いません。\+..*.\+ed

おすすめ記事