【发布时间】:2011-12-25 12:32:18
【问题描述】:
我有一个正则表达式列表(大约 10 到 15 个),我需要匹配一些文本。在一个循环中一一匹配它们太慢了。但是,我没有编写自己的状态机来一次匹配所有正则表达式,而是尝试| 各个正则表达式并让 perl 完成工作。问题是我怎么知道哪些选项匹配?
这个问题解决了每个单独的正则表达式中没有捕获组的情况。 (which portion is matched by regex?) 如果每个正则表达式中都有捕获组怎么办?
所以有了以下,
/^(A(\d+))|(B(\d+))|(C(\d+))$/
和字符串“A123”,我怎么知道A123匹配并提取“123”?
【问题讨论】:
标签: regex perl capture regex-group