ホームページ >バックエンド開発 >PHPチュートリアル >PHP 正規表現で「終了区切り文字 '^' が見つかりません」というエラーが発生するのはなぜですか?

PHP 正規表現で「終了区切り文字 '^' が見つかりません」というエラーが発生するのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-13 02:40:10659ブラウズ

Why Am I Getting a

正規表現エラー: 「終了区切り文字 '^' が見つかりません」

PHP では、正規表現にはパターンの開始と終了を示す区切り文字が必要です。 「終了区切り文字 '^' が見つかりません」というエラーが発生した場合は、これらの区切り文字の 1 つが欠落していることを示しています。

解決策

エラー メッセージに示されているように、終了区切り文字 "^ " がコードにありません。この問題を解決するには、正規表現パターンを一致する区切り文字のペアで囲みます。 PHP では、次の区切り文字が一般的に使用されます:

  • / /

たとえば、コード内では次のようになります。

$pattern = "^([0-9]+)$";

交換してください

$numpattern = "/^([0-9]+)$/";

または、「#」区切り文字も使用できます。

$numpattern = "#^([0-9]+)$#";

オプションの拡張

終了区切り文字の追加に加えて、次の機能強化:

  • タイプミス修正: 数値と一致するように、パターン内の "o" を "0" に置き換えます。
  • 簡略化されたパターン: 入力の検証のみに興味がある場合は、正規表現を簡略化します。 to:
/^\d+$/

PHP 区切り文字参考

PHP の区切り文字の詳細については、PHP ドキュメントを参照してください: [PHP - Delimiters](https://www.php.net/manual/en/regexp.reference.delimiters.php)。

これらの変更を実装すると、「終了区切り文字がありません」エラーが発生することなく、正規表現が期待どおりに動作するようになります。

以上がPHP 正規表現で「終了区切り文字 '^' が見つかりません」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。