Php 如何向url正则表达式添加阿拉伯字母
如何在正则表达式中将阿拉伯字母添加到urlPhp 如何向url正则表达式添加阿拉伯字母,php,regex,url,arabic,Php,Regex,Url,Arabic,如何在正则表达式中将阿拉伯字母添加到url if (!preg_match("^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0-9\-\._\?\,\'/\\\+&%\$#\=~])*$^",$_POST['url'])) {} 使用其UTF-8代码:\x123应该会有所帮助 UPD:完整的regexp似乎是这样的(对于规则来说,任何URL部分都可以包含阿拉伯字符):
if (!preg_match("^(http|https|ftp)\://[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0-9\-\._\?\,\'/\\\+&%\$#\=~])*$^",$_POST['url'])) {}
使用其UTF-8代码:
\x123
应该会有所帮助
UPD:完整的regexp似乎是这样的(对于规则来说,任何URL部分都可以包含阿拉伯字符
):
以下代码(以下简称为::::://[a-a-zA-zA-Z0-Z0-9-9-9-9-9\\ x0600-\x06FF\x06FF\x0750-\x077F\4040404040404040404040404040404040代码)码码码码)码码码)码>>码码>>以下以下以下以下以下(http(http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。ftp)以下以下以下以下(ftp)以下以下以下以下以下以下以下)是:::::::::::::::::::::::::::://///////[a-a-a-a-a-a-a-a-a-124;http。http。http。http。http。http。http。http。http。-\.\u\?\,\'/\+&;%\$\\=~\x0600-\x06FF\x0750-\x077F\xFB50-\xFDFF\xFE70-\xFEFF])*$使用其UTF-8代码:
\x123
应该会有所帮助
UPD:完整的regexp似乎是这样的(对于规则来说,任何URL部分都可以包含阿拉伯字符
):
以下代码(以下简称为::::://[a-a-zA-zA-Z0-Z0-9-9-9-9-9\\ x0600-\x06FF\x06FF\x0750-\x077F\4040404040404040404040404040404040代码)码码码码)码码码)码>>码码>>以下以下以下以下以下(http(http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。http。ftp)以下以下以下以下(ftp)以下以下以下以下以下以下以下)是:::::::::::::::::::::::::::://///////[a-a-a-a-a-a-a-a-a-124;http。http。http。http。http。http。http。http。http。-\.\u\?\,\'/\+&;%\$\\=~\x0600-\x06FF\x0750-\x077F\xFB50-\xFDFF\xFE70-\xFEFF])*$最好的选择是使用。这将是
\p{Arabic}
为您的情况。但是不要忘记,您还应该在末尾添加Unicode PCRE修饰符/u
。最好的选择是使用一个。这将是\p{Arabic}
为您的情况。但是不要忘记,您还应该在末尾添加Unicode PCRE修饰符/u
。将[a-zA-Z0-9]
替换为[\pL0-9]
,并且不要忘记在正则表达式末尾添加Unicode PCRE修饰符/u
。将[a-zA-Z0-9]
替换为[\pL0-9]
不要忘记正则表达式末尾的Unicode PCRE修饰符/u
。Mario是正确的,但是如果您需要对阿拉伯语字母使用完整范围,如[\x{0600}-\x{06FF}]
并且不要忘记将php内部编码转换为UnicodeMario是正确的,但是如果您需要对阿拉伯语字母使用全范围,比如[\x{0600}-\x{06FF}]
,并且不要忘记将php内部编码转换为Unicode