我正在尝试获取以下字符串中的最后一个词。
大约 45 分钟后,我似乎找不到正确的斜杠、破折号和括号组合。
我得到的最接近的是
/(?![调查])[a-z]+/gi
它匹配以下字符串,除了“required”它返回匹配“quired”我假设这是因为 re
在单词 survey 中。
survey[1][title]
survey[1][required]
survey[2][anotherString]
最佳答案
您正在使用一个字符集,它将排除任何 字符作为匹配中的第一个字符,这不是您想要的。使用简单的否定前瞻将是一个开始:
(?!survey)[a-z]+
但是您还想匹配 final 单词,这可以通过匹配后面跟有 \]$
的单词字符来完成 - 也就是说,通过 ]
和字符串的结尾:
[a-z]+(?=\]$)
https://regex101.com/r/rLvsY5/1
如果您想提高效率,匹配整个字符串,但捕获捕获组中方括号之间的内容 - 最后重复捕获的组将在结果中:
survey(?:\[(\w+)\])+
关于javascript - 正则表达式查找第二个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53664512/