ホームページ >バックエンド開発 >PHPチュートリアル >正規表現の ` タグ内の改行文字を照合するにはどうすればよいですか?

正規表現の ` タグ内の改行文字を照合するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-31 03:01:311051ブラウズ

How to Match Newline Characters Within `` Tags in Regular Expressions?

正規表現内の改行文字の一致

'/<div>(.*)<\/div>/s'

'/<div>(.*?)<\/div>/s'
の間に文字、空白、改行が含まれる文字列があります。
。正規表現
(.

)

. が改行と一致しないため失敗します。

解決策 1: DOTALL 修飾子

'/<div>([^<]*)<<\/div>/''

DOTALL 修飾子を使用します。これにより、ドット ( .) match newlines:

解決策 2: 非貪欲一致

'#<div>([^<]*)<<\/div>#'

貪欲一致を防ぐには、*?:

解決策 3: < を除外します。他のタグが存在しない場合は、

< を除くすべてと一致させることができます。他のタグがない場合:正規表現区切り文字に関する注意/ 以外の文字を正規表現区切り文字として使用できるため、エスケープが容易になります。特殊文字の使用:注意これらの解決策は、ネストされた div、余分な空白、HTML コメント、その他の複雑さによって失敗する可能性があります。信頼性の高い HTML 解析のために、HTML パーサーの使用を検討してください。

以上が正規表現の ` タグ内の改行文字を照合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

html String if for using Regex everything
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:LaravelでTLSメールを送信する際の「証明書の検証に失敗しました」エラーを修正する方法は?次の記事:LaravelでTLSメールを送信する際の「証明書の検証に失敗しました」エラーを修正する方法は?

関連記事

続きを見る