您好我尝试检查带引号的字符串是否最后没有:T
或:U
。
(我使用.Net Regex类)
到目前为止我所拥有的是
([\"'])(?:\\\1|.)*?\1
这匹配所有双引号和单引号的单词,例如"Test"
和'Test'
我被困的地方是,我不希望正则表达式匹配"Test":U
或'Test':U
或"Test":T
或'Test':T
答案 0 :(得分:0)
答案 1 :(得分:0)
您需要在结尾(?!:[UT])
添加否定前瞻。顺便说一句,你可以获得一个更有效的模式:
string pattern = @"[""'](?>(?<="")[^""\\]*(?>\\.[^""\\]*)*""|(?<=')[^'\\]*(?>\\.[^'\\]*)*')(?!:[UT])";