ホームページ > バックエンド開発 > PHPチュートリアル > ドット (.) を正規表現の改行と一致させるにはどうすればよいですか?

ドット (.) を正規表現の改行と一致させるにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-31 13:10:02
オリジナル
489 人が閲覧しました

How to Make the Dot (.) Match Newlines in Regular Expressions?

正規表現を使用して改行文字にドットを一致させる

正規表現では、ドット (.) は改行を除く任意の文字に一致します。ただし、改行も一致させたい場合があります。

これを実現するには、DOTALL 修飾子 (/s) を使用できます。これにより、ドットは改行を含むすべての文字と一致します。

たとえば、次の正規表現は改行と一致しません:

/<div>(.*)</div>/
ログイン後にコピー

改行と一致させるには、DOTALL 修飾子を追加します。

/<div>(.*)</div>/s
ログイン後にコピー

ただし、欲張らない一致を求める場合、これは理想的ではない可能性があります。代わりに、非貪欲一致を使用できます。

/<div>(.*?)</div>/s
ログイン後にコピー

または、他のタグがない場合は、「<」を除くすべてに一致させることもできます。文字:

/<div>([^<]*)</div>/
ログイン後にコピー

正規表現の区切り文字として必ずしも「/」を使用する必要がないことにも注意してください。別の文字を使用すると、

内のスラッシュをエスケープする必要がなくなり、読みやすくなります。たとえば、区切り文字として「#」を使用した場合、前の正規表現は次のようになります。

#<div>([^<]*)</div>#
ログイン後にコピー

ただし、これらのソリューションは、ネストされた div、余分な空白、 HTML コメントとその他の複雑さ。 HTML は非常に複雑なので、多くの場合、このようなタスクには HTML パーサーを使用する方が適しています。

以上がドット (.) を正規表現の改行と一致させるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート