正则表达式得到的所有文字从#到报价
答
您正则表达式(/(#([\"]))/g
)打破了这样的:
没有开始/结束分隔符/旗帜和捕获括号..
#[\"]
这只是意味着#
,其次是"
,但方括号为类是不必要的,因为只有一个项目,所以相当于...
#"
我想你想要t o匹配#
和"
(含)之间的所有字符(并专门捕获)。
开始:
#.+?"
这意味着#
其次是任何东西(.
)一次或多次(+
)非贪婪(?
),其次是"
所以与捕获括号和分度符...
/(#(.+?)")/g
+0
感谢你的分解很好。 – Anicho 2012-02-06 13:54:23
答
对于最小匹配cou NT(更大的长度相匹配):#(.+)\"
对于最大匹配计数(较小的长度相匹配):#(.+?)\"
这是你的问题的全部?如果是这样,正则表达式可能是没有必要的。但我确实知道,在某些情况下,如果问题进一步扩大,情况可能更好。 – 2012-02-06 13:10:13
当你要求正则表达式的情况下,通常包括一些测试用例,你期望什么以及你得到什么是一个好习惯。 – npinti 2012-02-06 13:13:13
对这个问题进行严重的措辞表示歉意。 – Anicho 2012-02-06 13:17:55