【发布时间】:2016-08-28 11:14:45
【问题描述】:
我需要捕获相同模式的多个组。假设,我有以下字符串:
HELLO,THERE,WORLD
我写了以下模式
^(?:([A-Z]+),?)+$
我想要它做的是捕捉每一个单词,因此第 1 组是:“HELLO”,第 2 组是“THERE”,第 3 组是“WORLD”。我的正则表达式实际上捕获的只是最后一个,即“WORLD”。
我正在测试我的正则表达式 here,我想将它与 Swift 一起使用(也许 Swift 中有一种方法可以以某种方式获得中间结果,以便我可以使用它们?)
更新:我不想使用split。我现在只需要如何捕获与模式匹配的所有组,而不仅仅是最后一个。
【问题讨论】:
-
为什么不在
,上拆分? -
为什么不使用
[A-Z]+或[^,]+来捕获结果 -
rock321987,我已经更新了输入字符串。我需要准确提取遵循上述模式的字符串。而且我需要让所有组都与模式匹配,而不仅仅是最后一个。我想知道如何使用正则表达式。
-
rock321987,什么不清楚?我需要字符串的每个单词都是匹配组,但我的模式只捕获最后一个(“WORLD”)。
-
使用 answer 查找所有匹配项
标签: regex