我需要一些帮助来编写一个正则表达式,该表达式将括号中的字符串与嵌套括号匹配并以模式开头。(注意:“父”括号中的文本可以没有嵌套括号)
例子:
Some text (pattern: SOME TEXT THAT (I WANT TO EXTRACT)) a bit more text (another pattern: ignore that text) and may be a little more text
结果应该是: SOME TEXT THAT (I WANT TO EXTRACT)
Some text (pattern: SOME TEXT THAT (I WANT TO EXTRACT)) a bit more text (another pattern: ignore that text) and may be a little more text
结果应该是 SOME TEXT THAT (I WANT TO EXTRACT)
Some text (pattern: SOME TEXT THAT I WANT TO EXTRACT) a bit more text (another pattern: ignore that text) and may be a little more text
结果应该是 SOME TEXT THAT I WANT TO EXTRACT
我试过的正则表达式就像/\((pattern:?\s?([^\)]+))\)/gi
错过了嵌套)
要从示例数据中提取文本,我认为您可以使用此正则表达式:
\(pattern
:?
\s?
(
.+?
\)
\)
var string = "Some text (pattern: SOME TEXT THAT (I WANT TO EXTRACT)) a bit more text (another pattern: ignore that text) and may be a little more text Some text (pattern: SOME TEXT THAT I WANT TO EXTRACT) a bit more text (another pattern: ignore that text) and may be a little more text";
var myRegexp = /\(pattern:?\s?(.+?\)?)\)/g;
var matches;
while ((matches = myRegexp.exec(string)) !== null) {
console.log(matches[1]);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句