Web 開発では、文字列を照合するために正規表現を使用することが必要になることがよくあります。 HTML では、form タグは非常に重要なタグであるため、ページ内のすべての form タグを取得する必要がある場合、正規表現は非常に便利なツールになります。この記事では、PHP で正規表現を使用して HTML のすべてのフォーム タグを照合する方法を紹介します。
1. HTML の form タグ
form タグは、HTML の非常に重要なタグで、フォームを作成するために使用されます。フォームはユーザーが情報を入力する方法であり、フォーム要素は通常、input、select、textarea などのタグを使用して作成されます。たとえば、次は form タグを含む HTML コードです。
<form action="submit.php" method="post"> <label for="username">用户名:</label> <input type="text" name="username" id="username"> <br> <label for="password">密码:</label> <input type="password" name="password" id="password"> <br> <input type="submit" value="提交"> </form>
この HTML コードでは、form タグの属性にはアクションとメソッドが含まれます。 action 属性はフォームデータを送信するアドレスを指定し、method 属性はフォームデータを送信するメソッド (get または post) を指定します。フォームには 2 つの入力ボックスと送信ボタンが含まれています。
2. PHP 正規表現を使用して HTML のすべてのフォーム タグと一致させる
HTML のすべてのフォーム タグと一致させるには、PHP で正規表現を使用する必要があります。まず、HTML コードを変数に保存し、preg_match_all 関数を使用して照合する必要があります。サンプル コードは次のとおりです。
<?php $html = " <html> <body> <form action='submit.php' method='post'> <label for='username'>用户名:</label> <input type='text' name='username' id='username'> <br> <label for='password'>密码:</label> <input type='password' name='password' id='password'> <br> <input type='submit' value='提交'> </form> </body> </html>"; // 正则表达式 $pattern = '/<form(.*?)</form>/si'; // s选项表示.匹配任何字符,包括换行符;i选项表示不区分大小写。 // 匹配 preg_match_all($pattern, $html, $matches); // 输出匹配结果 echo "<pre class="brush:php;toolbar:false">"; print_r($matches[0]); echo ""; ?>
このコードでは、正規表現を使用して HTML コード内の form タグと一致させます。正規表現の形式は「
」です。ここで、? は非貪欲一致を意味し、.? は 0 個以上の任意の文字と一致することを意味します。この正規表現の意味は、「