|
如题,
简单的说,是匹配类似如下C语言字符串的
"hello a quote\" here“ //该串中有个红色双引号
就是说,我们从最左边蓝色引号开始读该串,读到红色那个双引号时,不能认为串已经结束,因为红引号前面有一个转义字符"\",而必须继续读完剩下的here" ,才认为本串结束了。
我做的答案是:\"([^\"\\]*(\\.)*)*\"
改进一步,省去两个*闭包运算,换成? :\"([^\"\\]?(\\.)?)*\"
再加入对串类型 "xxxxx\ <--------------"\"后面跟一个换行符的
xxxx"
的支持:\"([^\"\\]?(\\.)?(\\\n)?)*\" |
|