0

電話番号の正規表現を書きたいです。最初のパターンは英語の数字を使用し、2 番目のパターンはペルシャ数字を使用します。を使用してこれらのパターンをどのように連結し|ますか?

   $pattern1 = '/^(\d{4})?\s?[1-9]{1}[0-9]{6}$/';
   $pattern2 = '/^([\x{0660}-\x{0669}]{4})?\s?[\x{0661}-\x{0669}]{1}[\x{0660}-\x{0669}]{6}$/u';

これは機能しません:

if (preg_match("($pattern1)|($pattern2)", $phone_number))...

そして、この警告を出力します:

Warning: preg_match(): Unknown modifier '|'

/uまた、区切り文字を 2 番目のパターンの最後に配置し、各サブパターン (パターン 1 とパターン 2) に区切り文字を配置する必要があるかどうか、または連結されたパターン全体に区切り文字を 1 つだけ含める必要があるかどうかもわかりません (例/pattern1|pattern2/u)

4

2 に答える 2