我有这个测试字符串:
{.aa1 .b3c .f4}
我想提取大括号内以文字点 .
开头的任意数量的单词。所以我写了这个 JavaScript 正则表达式:
/{((?=\.\w+?)(\.\w+?)\s*?)*}/g
我基本上是向前看 (?=\.\w+?)
,但如果有匹配项,则不会捕获它,因为向前看的宽度为零,所以我捕获 (\.\w+?)
,然后允许可能存在空格 \s*?
,然后我将所有这些分组,并尝试通过使用 *< 重复它来进行迭代
。但它不起作用 - regex101.com 告诉我返回:
MATCH 1
1. `.f4`
2. `.f4`
..虽然我想要一个匹配数组(.aa1
,.b3c
。.f4
)。我怎样才能实现这个目标?
最佳答案
关于javascript - 正则表达式迭代匹配多个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33278580/