ホームページ >バックエンド開発 >PHPチュートリアル >PHP の `preg_match` の「区切り文字は英数字またはバックスラッシュであってはなりません」エラーを修正する方法は?

PHP の `preg_match` の「区切り文字は英数字またはバックスラッシュであってはなりません」エラーを修正する方法は?

DDD
DDDオリジナル
2024-12-05 00:38:09250ブラウズ

How to Fix the

preg_match の区切り文字の問題

「区切り文字は英数字またはバックスラッシュであってはなりません」というエラーが発生した場合、正規表現に区切り文字が欠落していることを示しています。

提供されたコードは、preg_match を使用して文字列から一重引用符で囲まれた名前を抽出しようとします。ただし、正規表現にはパターンの境界を定義するための区切り文字が必要です。

解決策

正規表現に区切り文字を追加します。一般的に使用される区切り文字には、スラッシュ (/)、ポンド (#)、およびバッククォート (`) があります。この場合、スラッシュを使用します:

$pattern = "/My name is '(.*)' and im fine/";

パターンをスラッシュで囲むことにより、パターンの開始と終了を適切に定義し、発生したエラーを防ぎます。

更新されたコード

$string1 = "My name is 'Kate' and im fine";
$pattern = "/My name is '(.*)' and im fine/";
preg_match($pattern, $string1, $matches);
echo $matches[1]; // Output: Kate

この更新されたコードは、単一で囲まれた名前を正常に抽出して表示します。引用。正規表現パターンを定義するときは、解析エラーを避けるために有効な区切り文字を含めることが重要であることに注意してください。

以上がPHP の `preg_match` の「区切り文字は英数字またはバックスラッシュであってはなりません」エラーを修正する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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