正则表达式小贴士
- 如果不用复杂的正则式就能解决问题,一定不要用。
- 如果必须写比较复杂的正则式,请参考以下原则。
- 从大处着眼,先理解待解析的文本的整体结构是什么样子,划分为小部件;
- 从细处着手,试图实现每一个小部件,力求每一部分都是完整、坚固的,且放在全局也不会冲突。
- 合理组装这些部件。
- 分而治之的好处:只有某个模块出错,其它部分没错时,可以迅速定位错误,消除BUG。
- 谨慎使用捕获括号,除非你知道自己在做什么,知道它会有什么副作用,以及是否有可行的解决措施。对于短小的正则式来说,一两个多余的括号是无伤大雅的;但是对于复杂的正则式来说,一对多余的括号可能就是致命的错误。
- 尽量使用free-space模式。此时你可以自由地添加注释和空白字符,以便提高正则表达式的可读性。