0

入力した場合に電話番号を取り除きたい入力フォームがあります。さまざまな英国の数字を検出する式を見つけましたが、入力されるのが数字だけの場合にのみ機能します。テキスト内の数値のインスタンスを見つけるには、正規表現が必要です。

これが私がこれまでに持っているものです

if (preg_match_all('/^\(?(?:(?:0(?:0|11)\)?[\s-]?\(?|\+)44\)?[\s-]?\(?(?:0\)?[\s-]?\(?)?|0)(?:\d{2}\)?[\s-]?\d{4}[\s-]?\d{4}|\d{3}\)?[\s-]?\d{3}[\s-]?\d{3,4}|\d{4}\)?[\s-]?(?:\d{5}|\d{3}[\s-]?\d{3})|\d{5}\)?[\s-]?\d{4,5}|8(?:00[\s-]?11[\s-]?11|45[\s-]?46[\s-]?4\d))(?:(?:[\s-]?(?:x|ext\.?\s?|\#)\d+)?)$/', $post, $match_num))
{
    $error[0] = 1;
    $error[2] = 'error text';
    $error[4] = $match_num;
}
4

1 に答える 1

1

最初と最後から^andを削除するだけです。$これにより、正規表現がどこにでも一致するようになります。

于 2012-11-13T20:51:28.933 に答える