1. boost::reg_search(match, express)是指能够匹配部分的字符,而boost::reg_match()是指要进行全部的匹配,
在项目中不要用错了,我今天就发现本应该能匹配的规则结果没有进行匹配,后面才发现了这个错误。
2.在boost的perl语法中所有的括号都是特殊字符要进行转义,特别要注意的是“【】”中括号,因为经常用的字符中都没有把中括号当成一个特殊的字符,在调试的时候,发现一进行boost的匹配就会出错,后面才想到应该是boost的perl语法有问题,可谓调试的技术也还不到家,没有很好的去发现问题的实质,所以会浪费很多的时间。
3.boost::reg_search(match, express)中如果没有进行一个设置,就会把空串匹配成功返回true,例如有一小段代码:
while( boost::reg_search(match, what, express) ) 如果不加上一个默认的设置的话,在遇到空串就会进行如死循环中去。
while( boost::reg_search(match, what, express,boost::) )