这是源文本
some someword various-textsomeword heresomewordthis is the target stringanother text.ext another string
我需要获得
this is the target string
在“ someword”的最后一个条目(可以是任意数量的条目)之后,可以是任何单词
在第一次输入“另一个”单词之前
使用 JavaScript ,所以?<=不起作用。有人可以在这里帮忙吗?
请不要拆分)))
答案 0 :(得分:0)
您可以使用以下正则表达式来掌握2条下划线之间的所有内容:
/_.*?_(.*)?_/
首先匹配第一个下划线,然后匹配任意字符多次,然后匹配一个下划线,然后创建一个Group
,以抓住下划线之间的所有内容。
您所需的输出将在Group 1
中。
答案 1 :(得分:0)
您是否考虑过不使用正则表达式?
const str = "some various-text here_someword_this is the target string_another text.ext",
trigger = "someword";
let arr = str.split("_");
let match;
// iterate through the array looking for the trigger
for (let i = 0; i < arr.length - 1; i++){
if (arr[i] == trigger){
match = arr[i+1];
break;
}
}
console.log(match);