
php正则如何匹配除中文加冒号外的字符串?
在php中,如何使用正则表达式匹配两个<td>标签之间的内容,但排除包含中文加冒号(:)格式的字符串呢?
示例:
要匹配的字符串:
立即学习“PHP免费学习笔记(深入)”;
<td>我是张三分</td> <td>张无忌: 你真的是张三分?</td>
问题:
使用正则表达式/<td>. ?</td>匹配会匹配到中文加冒号,而 /<td>[^(x{4e00}-x{9fa5}[::])] }</td>无法正常匹配。
解决方案:
使用preg_match_all函数和否定前瞻断言:
preg_match_all('/<td>(?!.*[\x{4e00}-\x{9fa5}:]).*&<\/td>/u', $input, $matches);其中:
以上就是PHP正则表达式:如何匹配两个标签之间的内容且排除包含中文冒号的字符串?的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号