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

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

WBOY
WBOYOriginal
2016-06-06 20:32:331649Durchsuche

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

<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,工作不太正常

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn