正規表現を使用して改行文字にドットを一致させる
正規表現では、ドット (.) は改行を除く任意の文字に一致します。ただし、改行も一致させたい場合があります。
これを実現するには、DOTALL 修飾子 (/s) を使用できます。これにより、ドットは改行を含むすべての文字と一致します。
たとえば、次の正規表現は改行と一致しません:
/<div>(.*)</div>/
改行と一致させるには、DOTALL 修飾子を追加します。
/<div>(.*)</div>/s
ただし、欲張らない一致を求める場合、これは理想的ではない可能性があります。代わりに、非貪欲一致を使用できます。
/<div>(.*?)</div>/s
または、他のタグがない場合は、「<」を除くすべてに一致させることもできます。文字:
/<div>([^<]*)</div>/
正規表現の区切り文字として必ずしも「/」を使用する必要がないことにも注意してください。別の文字を使用すると、
#<div>([^<]*)</div>#
ただし、これらのソリューションは、ネストされた div、余分な空白、 HTML コメントとその他の複雑さ。 HTML は非常に複雑なので、多くの場合、このようなタスクには HTML パーサーを使用する方が適しています。
以上がドット (.) を正規表現の改行と一致させるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。