アトミック ゼロ幅アサーションは、それ自体が文字にマッチせず、位置にマッチする構成体です。
以下のアトミック ゼロ幅アサーションは、検索文字列でのみ使用できます。
アトミック ゼロ幅アサーション |
説明 |
---|---|
^ |
大きなUFOを見た という文字列に対しては、^大きな で検索すればマッチしますが、^UFO で検索してもマッチしません。 |
$ |
大きなUFOを見た という文字列に対しては、見た$ で検索すればマッチしますが、UFO$ で検索してもマッチしません。 行モードの場合、改行が \r\n となっている場合は、$ は \r と \n の間を示します。 行モードでない場合、改行(\n)で終了している文字列に対して検索すると、最後の改行(\n)の直前と、その直後の2箇所にマッチします。 |
\A |
行モードの有無に関わらず、後続の表現が、文字列全体の先頭でマッチしなければならないという制限を付けます。 大きなUFOを見た という文字列に対しては、\A大きな で検索すればマッチしますが、\AUFO で検索してもマッチしません。 |
\Z |
行モードの有無に関わらず、後続の表現が、文字列全体の末尾でマッチしなければならないという制限を付けます。 大きなUFOを見た という文字列に対しては、見た\Z で検索すればマッチしますが、UFO\Z で検索してもマッチしません。 改行(\n)で終了している文字列に対して検索すると、最後の改行(\n)の直前と、その直後の2箇所にマッチします。 |
\z |
行モードの有無に関わらず、後続の表現が、文字列全体の末尾でマッチしなければならないという制限を付けます。 大きなUFOを見た という文字列に対しては、見た\z で検索すればマッチしますが、UFO\z で検索してもマッチしません。 \Z とは異なり、改行(\n)で終了している文字列に対して検索しても、最後の改行(\n)の直前にはマッチせず、その直後のみにマッチします。 |
\G |
連続でマッチさせている過程で、前回のマッチが終了した位置でマッチしなければならないという制限を付けます。 AAAABAAAA という文字列に対しては、A で検索すればすべての(つまり8個の) A にマッチしますが、\GA で検索した場合は、先頭から連続する4つの A にのみマッチします。 |
\b |
\w と \W の境界でマッチしなければならないという制限を付けます。 AAAA BBBB という文字列に対し、
を適用すると、 #AAAA# #BBBB# に置換されます。 |
\B |
\b 以外の境界でマッチしなければならないという制限を付けます。 AAAA BBBB という文字列に対し、
を適用すると、 A#A#A#A B#B#B#B に置換されます。 |
2008/11/19 wrote; by SirMiles
All rights reserved,Copyright ©SirMiles 2008-.