javascript - PHP正则 去除uncode 控制字符的正则
如下测试:
无法匹配(注:u202e 为RLO控制字符)
违禁字符 测试:功轮法
字符序为 RLO
功轮法
貌似控制字符钻的空子蛮多?
贴吧已经屏蔽了控制字符,不过,我能力有限,没有找到相关的控制JS的REX。
特来sf求助。
PS:用户名中文没法用 /^[x4e00-x9affw]{4,12}$/
回复内容:
在写网站的用户名验证,叫玩渗透的朋友测试。。然后给我来了个控制字符的输入(虽然没啥关系,但是,还是有影响。貌似在sf上面的正则也不起作用。还有,PHP perl怎么使用uncode?
如下测试:
无法匹配(注:u202e 为RLO控制字符)
违禁字符 测试:功轮法
字符序为 RLO
功轮法
貌似控制字符钻的空子蛮多?
贴吧已经屏蔽了控制字符,不过,我能力有限,没有找到相关的控制JS的REX。
特来sf求助。
PS:用户名中文没法用 /^[x4e00-x9affw]{4,12}$/
翻完了PHP Manual ,找到了匹配的模式,,,中文,a-zA-Z_,匹配正则:/[wx{4e00}-x{9aff}]{4,12}/u
测试:
中文和日语应该都没问题了,要开启utf-8模式。
在UTF-8模式, “x{…}”允许使用, 花括号内的内容是十六进制有效数字。 它将给出的十六进制数字解释为 UTF-8 字符代码。
u (PCRE_UTF8)
此修正符打开一个与 perl 不兼容的附加功能。 模式字符串被认为是utf-8的. 这个修饰符 从 unix 版php 4.1.0 或更高,win32版 php 4.2.3 开始可用。 php 4.3.5 开始检查模式的 utf-8 合法性。
问题结束,不明白为啥没大大回答。
推荐阅读
-
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
-
WEB开发时常用的正则表达式(PHP和Javascript)
-
php与javascript正则匹配中文的方法分析
-
javascript - js里的正则匹配能有类似php里的PREG_OFFSET_CAPTURE功能吗
-
PHP正则去除采集页中的超级链接跟图片,参数如何写。
-
PHP正则去除采集页中的超级链接跟图片,参数如何写。
-
javascript - js里的正则匹配能有类似php里的PREG_OFFSET_CAPTURE功能吗
-
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
-
javascript - php在制作菜单的默认选中状态的时候,php正则比jq循环哪个快?
-
javascript - PHP正则 去除uncode 控制字符的正则