PHP 正则表达式匹配中文的问题

2017-04-08 17:15:08 +08:00
 RadishWind

比如: '/[猜拳|石头|剪刀|布]/iUs'这条正则表达式,我输入别的字也能有匹配结果(乱码),请问这个的原因是什么,如何解决这个问题?

2775 次点击
所在节点    PHP
4 条回复
RE
2017-04-08 17:41:25 +08:00
首先确保页面编码一致,然后使用 UTF8 的编码 \x{XXXX} 这样的格式代替你的中文
abcbuzhiming
2017-04-08 21:36:20 +08:00
PHP 的版本,正则表达式的实现里,需要实现对 unicode 匹配的支持才能做到正确匹配中文,我记得 php 是在某个版本之后才支持的
jfcherng
2017-04-08 22:29:54 +08:00
'/[猜拳|石头|剪刀|布]/iUsu'
RadishWind
2017-04-09 11:54:33 +08:00
@RE @abcbuzhiming @jfcherng 解决了 原因是我把[]和|用重了,直接'/猜拳|石头|剪刀|布 /'就行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/353455

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX