php - 正则表达式查找忽略所有非数字字符的数字
问题描述
保存的字符串:(123) 456-78-90
搜索词:34567
我需要什么 reg 表达式才能找到匹配项。试过:
/3.*4.*5.*6.*7/
但是,如果搜索词是34569
,它仍然会找到错误的匹配项。
我需要正则表达式以给定顺序查找数字,但忽略这些数字之间的所有数字,如括号、空格或破折号。
谢谢
解决方案
为什么不只是删除非数字字符然后搜索:
$input = "(123) 456-78-90";
$input = preg_replace("/[^0-9]+/", "", $input);
if (strpos($input, '34567') !== false) {
echo 'match';
}
演示
推荐阅读
- vim - 无法使用 VIM 折叠 python 注释
- python - conda 环境中的 Python 不是 conda python
- asp.net-core-mvc - 如何避免在 MVC 核心视图的条件代码中硬编码业务实体的值?
- windows - 为什么 macOS 处理屏幕分辨率的方式与 Windows 不同?
- c++ - 如何将 char 值用于字符串?
- python - Pip 安装 Keras 和 TensorFlow 缺少软件包?
- javascript - 为什么尝试访问 React 组件的类名会导致 ReferenceError?
- heroku - 连接两个免费的 Heroku 应用程序以同时唤醒
- java - Swing 动画滞后,SwingWorker 没有帮助?
- python - 如何从 matplotlib 中删除工具栏按钮