已保存的字符串:(123) 456-78-90
搜索词:34567
我需要找到什么匹配表达式。尝试过:
/3.*4.*5.*6.*7/
但是,如果搜索词为34569
,它仍然会找到错误的匹配项。
我需要用正则表达式按给定顺序查找数字,但忽略这些数字之间的所有内容,例如方括号,空格或破折号。
谢谢
答案 0 :(得分:2)
为什么不只删除非数字字符然后在其上进行搜索:
$input = "(123) 456-78-90";
$input = preg_replace("/[^0-9]+/", "", $input);
if (strpos($input, '34567') !== false) {
echo 'match';
}
答案 1 :(得分:1)
将.
更改为\D
(非数字)即可使用,例如/3\D*4\D*5\D*6\D*7/