"lo more love ve" 我对-6ren">
gpt4 book ai didi

javascript - 正则表达式匹配括号正则表达式内的引号

转载 作者:行者123 更新时间:2023-11-30 16:59:29 24 4
gpt4 key购买 nike

我正在研究一个正则表达式,它必须只匹配引号内的文本而不匹配评论中的文本,我的 macthes 必须只匹配粗体的字符串

<"love";>

>/*"love"*/<

<>'love'<>

"lo

more love

ve"

我对此感到震惊:

/(?:((\"|\')(.|\n)*?(\"|\')))(?=(?:\/\**\*\/))/gm

第一个(?:((\"|\')(.|\n)*?(\"|\')))匹配所有的字符串第二个 (?=(?:\/\**\*\/))/* "mystring"*/ 中引号内的文本不匹配/p>

我的逻辑很明显是错误的

有什么建议吗?

谢谢

最佳答案

也许您只需要使用否定前瞻来检查注释结束*/

但首先,我会将字符串拆分成单独的行

 var arrayOfLines = input_str.split(/\r?\n/);

或者,没有空行:

 var arrayOfLines = input_str.match(/[^\r\n]+/g);

然后使用 this regex :

["']([^'"]+)["'](?!.*\*\/)

示例代码:

var rebuilt_string = ''
var re = /["']([^'"]+)["'](?!.*\*\/)/g;
var subst = '<b>$1</b>';

for (i = 0; i < arrayOfLines.length; i++)
{
rebuilt_string = rebuilt_string + arrayOfLines[i].replace(re, subst) + "\r\n";
}

关于javascript - 正则表达式匹配括号正则表达式内的引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29144642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com