扫码关注官方订阅号
比如:
<ul> <li> - 中华人民共和国 - </li> </ul>
要提取出“中华人民共和国”,正则表达式应该怎么写?
光阴似箭催人老,日月如移越少年。
利用提取中文字符的思路:
<?php $str = '<ul> <li> - 中华人民共和国 - </li> </ul>'; preg_match('/<ul>\s*<li>[^\x{4e00}-\x{9fff}]*([\x{4e00}-\x{9fff}]*)[^\x{4e00}-\x{9fff}]*<\/li>\s*<\/ul>/u', $str, $arr); print_r($arr); // 结果 /* Array ( [0] => <ul> <li> - 中华人民共和国 - </li> </ul> [1] => 中华人民共和国 ) */
可以先使用trim(),然后再正则么?
trim()
能不用正则的坚决不用正则。
PHP直接解析DOM然后+trim
trim的第二个参数很方便
trim
就算一定要用正则也要让正则干最少的工作。
trim(' - ')
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
利用提取中文字符的思路:
可以先使用
trim(),然后再正则么?能不用正则的坚决不用正则。
PHP直接解析DOM然后+trim
trim的第二个参数很方便就算一定要用正则也要让正则干最少的工作。
trim(' - ')