RegEx在两个字符串之间获取所有字符串

时间:2015-01-28 16:38:08

标签: javascript jquery regex json string

我似乎与RegEx有一种爱/恨的关系,因为我喜欢它有多么强大,但与此同时,我还不太了解它的所有细微差别。

我有相当冗长的JSON提要,我需要解析并捕获两个特定字符串之间的所有匹配。我已经在a link to the regex101.com example中添加了一些JSON结果。

regex101.com Example

我正在尝试匹配每个/content/usergenerated/jcr:content

之间的每个字符串

...

我想我应该尝试匹配的是一个字符串,以/content/webAppName/en/home开头,结尾 /jcr:content

我关心的路径始终以/content/webAppName/en/home

开头

3 个答案:

答案 0 :(得分:1)

你必须使用匹配数字序列的“正向前瞻”,如果后面跟着某些数字 https://regex101.com/r/fU1iD1/4

答案 1 :(得分:0)

只需在括号中包含要删除的两个内容,然后将其从输出中删除。所以......

(\/content\/usergenerated)(.*)(\/jcr\:content)

替换为

/2

这两者中间的一切都是。

编辑:对不起,没看你的例子:) - 有一个删除的答案,说添加g修饰符,看起来很有效。

答案 2 :(得分:0)

/内容/ usergenerated /内容/ webAppName / EN /家庭([A-ZA-Z / - ] +)/ JCR:含量

这应该有效。它匹配4中的3个不知道为什么它与em中的一个不匹配。您可以在循环中使用exec(),直到它返回null并获取包含第一个和唯一捕获组的数据的对象[1]。

一切顺利。

PS:我在正则表达式的选项中使用了gmi。

相关问题