相关疑难解决方法(0)

如何将双引号字符串与转义的双引号字符匹配?

我需要一个Perl正则表达式来匹配一个字符串.我假设只有双引号字符串,一个\"是一个文字引号字符,而不是字符串的结尾,并且\是一个字面反斜杠字符,不应该转义引号字符.如果不清楚,一些例子:

"\""    # string is 1 character long, contains dobule quote
"\\"    # string is 1 character long, contains backslash
"\\\""  # string is 2 characters long, contains backslash and double quote
"\\\\"  # string is 2 characters long, contains two backslashes
Run Code Online (Sandbox Code Playgroud)

我需要一个能够识别所有这四种可能性的正则表达式,以及这些可能性的所有其他简单变体,作为有效字符串.我现在拥有的是:

/".*[^\\]"/
Run Code Online (Sandbox Code Playgroud)

但那是不对的 - 除了第一个之外,它不会匹配任何一个.任何人都可以给我一个关于如何处理这个问题的正确方向吗?

regex perl escaping

31
推荐指数
4
解决办法
5万
查看次数

标签 统计

escaping ×1

perl ×1

regex ×1