ホームページ >バックエンド開発 >PHPチュートリアル >HTML 解析のために正規表現内のオプションの空白を無視する方法
正規表現内のオプションの空白
HTML またはテキスト データを解析する場合、特定の文字間の空白を無視することが必要になることがよくあります。ただし、正規表現を使用すると難しい場合があります。
s を使用した解決策?および s* 量指定子
文字間のオプションの空白を一致させるには、量指定子 s? を使用します。 s*.
例
次の HTML タグの空白を無視するには:
<code class="html"><a href="/wiki/File:Sky1.png" title="File:Sky1.png"> <img alt="Sky1.png" src="http://media-mcw.cursecdn.com/thumb/5/56/Sky1.png/150px-Sky1.png" width="150" height="84"> </a></code>
次の正規表現を使用します:
'#<a href\s?="(.*?)" title\s?="(.*?)"><img alt\s?="(.*?)" src\s?="(.*?)"[\s*]width\s?="150"[\s*]height\s?="(.*?)"></a>#'
この式では、属性名と属性の間にオプションの空白を使用できます。
文字クラスに関する注意
元のコードでは文字クラス [s が使用されていました。 』が予想外の結果を引き起こした。文字クラスはそのメンバーのいずれかと 1 回一致しますが、 量指定子を使用すると複数回一致することができます。 [s] を s に置き換えることで、空白文字のみが一致し、数量指定子がそれらの文字に具体的に適用されるようになります。
以上がHTML 解析のために正規表現内のオプションの空白を無視する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。