我有一个可以在输入字符串中出现任意次数的组。我需要获得所有匹配项的列表。
例如,输入:
example repeattext 1 anything here repeattext 2 anything repeattext 3
我的正则表达式是:
(repeattext \d)
我想获得该组的匹配列表。可以在这里使用正则表达式,还是我需要自己解析它?
答案 0 :(得分:1)
是的,你可以在这里使用正则表达式。你现有的正则表达式会很好。
请参阅http://rubular.com/r/fS8c9C61rG,了解您的示例中使用的内容。
如果数字将变为10或更高,请考虑此正则表达式:
(repeattext \d+)
^
|
`- matches 1 or more repeating of previous
答案 1 :(得分:1)
使用
result = subject.scan(/repeattext \d+/)
=> ["repeattext 1", "repeattext 2", "repeattext 3"]