首页 > 后端开发 > php教程 > 正则表达式 - 请教PHP中这则正则`#x{00a0}#siu`是什么意思?

正则表达式 - 请教PHP中这则正则`#x{00a0}#siu`是什么意思?

WBOY
发布: 2016-06-06 20:32:33
原创
1675 人浏览过

在代码中发现的,不太理解,请高手分析下

<code>$filename = preg_replace( "#\x{00a0}#siu", ' ', $filename );
</code>
登录后复制
登录后复制

回复内容:

在代码中发现的,不太理解,请高手分析下

<code>$filename = preg_replace( "#\x{00a0}#siu", ' ', $filename );
</code>
登录后复制
登录后复制

x{00a0} 是UTF-8的 Non-breaking space,这个空格和单纯用键盘上的space键敲出来的还不一样,甚至肉眼都无法分辨出来,如果你在编辑器里面查找,就可以发现问题。

<code>$filename = preg_replace( "/#\x{00a0}#siu/u", ' ', $filename );
</code>
登录后复制

这是Wiki 上关于 Non-breaking space 的介绍,其中也有怎么输出这个字符的方法。
https://en.wikipedia.org/wiki/Non-breaking_space

想把00a0这个字符替换成空格

00a0是NON-BREAKING-SPACE,也就是&nbsp

试了一下似乎因为有u,工作不太正常

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板