我想将 Regex 和两个单词之间的结果转移到一个数组中,但不幸的是我不能这样做。你能帮我吗?
在本文中
[row]
Row text1
[rowEnd]
[row]
Row text2
[rowEnd]
我会搜索这个内容,
[row]
(.*)
[rowEnd]
基于此,我写了一个这样的正则表达式
/(\[row\]+)(.*)(\[rowEnd\])/gs
但是,这种方式需要整体,而不是一块一块。
预先感谢您的帮助。
在 Javascript 中,你可以使用
^\[row]\r?\n([^]*?)\r?\n\[rowEnd]
^
字符串的开始\[row]\r?\n
匹配[row]
和换行(
捕获组 1
[^]*?
匹配 0+ 次任何字符,包括换行符非贪婪)
关闭第 1 组\r?\n\[rowEnd]
匹配换行符和 [rowEnd]
const regex = /^\[row]\r?\n([^]*?)\r?\n\[rowEnd]/gm;
const str = `[row]
Row text1
[rowEnd]
[row]
Row text2
[rowEnd]`;
Array.from(str.matchAll(regex), m => console.log(m[1]));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句