Javascript 如何编写正则表达式来匹配双引号字符串?
我正在尝试构建一个能够匹配双引号字符串的正则表达式。 以下是我所拥有的:Javascript 如何编写正则表达式来匹配双引号字符串?,javascript,regex,Javascript,Regex,我正在尝试构建一个能够匹配双引号字符串的正则表达式。 以下是我所拥有的: regex = /\"(\\\"|[^\"])*\"/g 它几乎适用于所有情况。但在某些情况下,它无法正确捕获字符串。例如,如果输入为“\”,则不应将其捕获为双引号字符串,因为“\”将是字符“”的一个字符串。为此,我试图找出所需的条件,即: 如果结束双引号的前一个字符是“\”,请不要捕获它。但老实说,我不知道如何将其表达为正则表达式 我将感谢一些提示和帮助完成这项工作。 事先谢谢你试试这个:(?:[^\\\“]\\\
regex = /\"(\\\"|[^\"])*\"/g
它几乎适用于所有情况。但在某些情况下,它无法正确捕获字符串。例如,如果输入为“\”,则不应将其捕获为双引号字符串,因为“\”将是字符“”的一个字符串。为此,我试图找出所需的条件,即:
- 如果结束双引号的前一个字符是“\”,请不要捕获它。但老实说,我不知道如何将其表达为正则表达式
事先谢谢你试试这个:
(?:[^\\\“]\\\\”([^\\“]*)\“
”(?:[^\\”]+\\\\)*“是更好的方法。顺便说一句,在使用/pattern/
构造函数时,不需要转义双引号,所以\\\\\\\\\\\\
和\\”
可以简单地编写”
和\\“
。