regx = "#|(//s*)"
这个正则表达式匹配的是所有满足#或者 任意长度空白的子字符串。
但是下面这个:
regx= "(//s*)|#"匹配的却是所有空白子字符串。解析的时候并不会解析|#,原因是//s*是贪婪匹配,是无限种匹配方式,如果是用有限自动机来理解,就是这个匹配要达到的状态在自循环时只有达到字符串结尾才终止。所以不会匹配后面的模式,即使用|连接也不可以。而很多人明白*,+的贪婪匹配,但是看到|却还是被迷惑了。认为这两个状态会2选1执行。实验证明是错的。
阅读(1981) | 评论(0) | 转发(0) |