使用正则提取和替换微博正文中的@提及

这段时间在折腾一个的 mini 型微博,晚上遇到一个问题就是要把微博和评论正文中的 @ 提及他人转换成链接,在网络上拼拼凑凑,也算弄出来了 /* * 显示带有 @ 提及他人的微博正文 */ function tweet_echo($content) { $content = htmlspecialchars($content); $pattern = '/@([x{4e00}-x{9fa5}A-Za-z0-9]*)/u'; $rep……

阅读全文

针对正则引擎的拒绝服务攻击

最近在看这个书,http://book.douban.com/subject…,在 311 页讲到了一个针对正则引擎的 DoS,叫做 ReDoS,wiki 看这里,http://en.wikipedia.org/wiki/R…,原因是正则引擎在匹配的时候是用状态机,然而通过构造一些特殊的输入,可以让这个状态机需要尝试的路径暴涨,于是就耗时也跟着上升,照着书上敲了代码……

阅读全文