regex - 如何编写匹配多种模式中的任何一种的正则表达式?
问题描述
是否可以为一组匹配模式 1 或模式 2 的字符串构建正则表达式,其中两个模式具有相同数量的捕获组?
我需要通过对捕获组数组进行索引来检索字符串段,而与知道字符串是否匹配模式 1 或 2 无关。
pattern 1
I545XY
([I])(\d{3})()([A-Z]{2})
pattern 2
O5480000031000ZZ
([O])(\d{3})(\d{10})([A-Z]{2})
所以每个模式有4组。第 1、2、4 组是相同的。模式 1 中缺少组 3。
我想在整个组索引(1,2,3,4)中索引任何结果(无论是模式 1 还是模式 2)。
解决方案
推荐阅读
- jsf - How to escape double quotes for Primefaces SelectOneMenu in Application level?
- pandas - 如何将一系列元组转换为 DataFrame?
- xml - 无法保存 XML 文件,无法访问文件“\\Server\Folder\Access.xml”,因为它正被另一个进程使用
- c++ - 子数组分配:聚合对象错误预期使用“{...}”进行初始化
- mysql - 我在 MySQL 工作台中看到的变量与我在 docker-compose 中看到的不匹配
- reactjs - React Joi uri 验证可选
- android - 旋转器如何关闭?
- php - 如何从一张表中选择两个 SUM,但一个 SUM 只能从最大值中选择。数据
- javascript - 添加 cookie 过期日期
- php - PHP 表单未创建 .csv 文件