regex - 正则表达式捕获文本字符串中以 25 开头的 14 位数字
问题描述
我创建了一个正则表达式,它只捕获 14 位长并以 25 开头的数字,它可以正常工作。
if (preg_match('/(?=\d{14}$)(25)\d+/', $valid_id)){
$return_value = 1;
}
如果我在数字之前输入一些东西,它就可以正常工作。但是,只要我在数字之后写一些东西(空格、字母、数字),正则表达式就会停止工作并且不再捕获它。
例如:
$valid_id = "the id is 25000000000000";
它抓住了数字,但如果我写
$valid_id = "the id is 25000000000000 and it is valid";
然后它没有。
我想我在正则表达式的末尾遗漏了一些东西,但无法弄清楚。
解决方案
推荐阅读
- html - WordPress Docent 主题如何左对齐 h2 博客标题
- r - 在 R 中选择性地过滤多个变量
- haskell - 预期类型与实际类型不匹配
- google-apps-script - 已验证的 Google 表格插件(SurveyMonkey 应用)出现“此应用被阻止”错误
- c++ - 字符串的 C++ 向量转换为整数的关联向量
- vue.js - 将 Getter 传递给 Vuex Action 返回 null
- python - 使用 Requests 抓取 ajax 页面
- oop - 两个类之间的 UML 关系是什么,它们的数据库 id 是另一个,但没有相互引用?
- sql - Oracle 中是否有 @@trancount 等效项?
- angular - 使用 mat-datepicker 选择多个月份