PHP正则表达式 - 只允许某些数字

时间:2014-03-18 11:37:11

标签: php regex

$output = preg_replace( '/[^0-9]/', '', $string );

如何将上述行更改为仅接受必须以11 digit

开头的01, 02, 03, 05, 07 or 08, but NOT 04, 06, 09个长号码

4 个答案:

答案 0 :(得分:3)

使用以下模式:

 /^0[123578]{1}[0-9]{9}$/

答案 1 :(得分:2)

试试这个:

$output = preg_replace( '/^0[1-3578]\d{9}/', '', $string );

\d{9}表示9位数字,因为您已经有2位数字。

答案 2 :(得分:0)

试试这个:

/^0[123578][0-9]{9}$/

答案 3 :(得分:0)

试试这个:

^0[1-3578]\d{9}$

Regular expression visualization

0 - 零[^469] - 除469 \d以外的数字 - 任意数字