Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript正则表达式在两个单词中进行多次搜索_Javascript_Regex_Regex Lookarounds - Fatal编程技术网

Javascript正则表达式在两个单词中进行多次搜索

Javascript正则表达式在两个单词中进行多次搜索,javascript,regex,regex-lookarounds,Javascript,Regex,Regex Lookarounds,我想将结果在正则表达式和两个单词之间传输到一个数组,但不幸的是,我不能这样做。你能帮我吗 在本文中 [row] Row text1 [rowEnd] [row] Row text2 [rowEnd] 我将搜索此内容 [row] (.*) [rowEnd] 基于此,我编写了一个这样的正则表达式 /(\[row\]+)(.*)(\[rowEnd\])/gs 然而,这样做需要整体,而不是一块一块 提前感谢您的帮助。在Javascript中,您可以使用 ^\[row]\r?\n([^]*?)\r

我想将结果在正则表达式和两个单词之间传输到一个数组,但不幸的是,我不能这样做。你能帮我吗

在本文中

[row]
Row text1
[rowEnd]

[row]
Row text2
[rowEnd]
我将搜索此内容

[row]
(.*)
[rowEnd]
基于此,我编写了一个这样的正则表达式

/(\[row\]+)(.*)(\[rowEnd\])/gs
然而,这样做需要整体,而不是一块一块


提前感谢您的帮助。

在Javascript中,您可以使用

^\[row]\r?\n([^]*?)\r?\n\[rowEnd]
^字符串开头 \[行]\r?\n匹配[行]和换行符 捕获组1 [^]*? 匹配0+乘以任何字符,包括换行符非贪婪字符 封闭组1 \r?\n\[rowEnd]将换行符与[rowEnd]匹配 常量regex=/^\[row]\r?\n[^]*?\r?\n\[rowEnd]/gm; 常量str=`[行] 行文本1 [罗文德] [世界其他地区] 行文本2 [rowEnd]`; Array.fromstr.matchAllregex,m=>console.logm[1];没有正则表达式 按[行]拆分数据。 然后过滤以[rowEnd]结尾的字符串。 最后从筛选的字符串中删除[rowEnd]。 常数 数据=[row]行文本1[rowEnd][row]行文本2[rowEnd], res=数据 .分割[行] .filters=>s.endsWith[rowEnd] .maps=>s.0,-8;
console.logres;谢谢,伙计,成功了!另一方面,这也有效。谢谢