ホームページ > バックエンド開発 > PHPチュートリアル > PHP 正規表現: HTML 内のすべてのフォームタグと一致する方法

PHP 正規表現: HTML 内のすべてのフォームタグと一致する方法

王林
リリース: 2023-06-23 12:44:02
オリジナル
1384 人が閲覧しました

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 個以上の任意の文字と一致することを意味します。この正規表現の意味は、「」で終わるすべての文字列と一致することです。

また、preg_match_all 関数を使用して、正規表現の一致操作を実行します。この関数の最初のパラメータは正規表現、2 番目のパラメータは一致する文字列、3 番目のパラメータは一致結果です。 $matches[0] 配列には、一致するすべての結果が含まれます。

最後に、print_r 関数を使用して一致結果を出力します。上記のコードを実行すると、出力結果は次のようになります。

Array
(
    [0] => <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 タグと正常に一致し、一致した結果を出力します。

3. 概要

この記事では、PHP で正規表現を使用して HTML のすべてのフォーム タグを照合する方法を紹介します。 preg_match_all 関数を使用して正規表現一致操作を実行し、$matches[0] 配列を使用してすべての一致結果を取得します。正規表現を作成するときは、シンボルのエスケープや非貪欲一致などの手法に注意する必要があります。正規表現を使いこなすことは Web 開発にとって非常に重要ですので、この記事の内容が読者のお役に立てれば幸いです。

以上がPHP 正規表現: HTML 内のすべてのフォームタグと一致する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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