php正则表达式高级技巧及实例(Perl兼容)
on upper_case( $matches ) {
return strtoupper( $matches[0] ); } 函数upper_case接收匹配结果数组,并将整个匹配结果转化成大写。 在此例中,$matches[0]代表需要被大写化的字母。然后,我们再利用preg_replace_callback实现回调: preg_replace_callback( ''/\b\w/'', "upper_case", $str ); 一个简单的回调即有这般强大的力量。 8. 注释(Commenting) 注释不用来匹配字串,但确实是正则表达式中最重要的部分。当正则越写越深入,越写越复杂,要推译出究竟什么东西被匹配就会变得越来越困难。在正则表达式中间加上注释,是最小化将来的迷糊和困惑的最佳方式。 要在正则表达式内部加上注释,使用(?#comment)格式。把“comment”替换成你的注释语句: /(?#数字)\d/ 如果你打算把代码公之于众,为正则表达式加上注释就显得尤为重要。这样别人才能更容易看懂和修改你的代码。和其他场合的注释一样,这样做也能为你重访自己以前写的程序时提供方便。 考虑使用“x”或“(?x)”修改器来格式化注释。这个修改器让正则引擎忽略表达式参数之间的空格。“有用的”空格仍然能够通过[ ]或\s,或者\ (反义符加空格)来匹配。 / \d #digit [ ] #space \w+ #word /x 上面的代码与下面的式子作用一样: /\d(?#digit)[ ](?#space)\w+(?#word)/ 请时刻注意代码的可读性。 更多资源(英文) Regular-Expressions.info Comprehensive website on regular expressions Cheat SheetInformative regular expressions cheat sheet Regex GeneratorJavaScript regular expressions generator 关于作者 Karthik Viswanathan 是一个喜欢编程和做网站的高中生。你可以到他的博客上查看他的作品:Lateral Code。你也可以关注一下他的线上Twitter应用。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |