如何添加阿拉伯语字母的正则表达式如何添加阿拉伯语字母网址正则表达式
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'])) {}
如何添加阿拉伯语字母的正则表达式如何添加阿拉伯语字母网址正则表达式
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:完整的正则表达式似乎是这样的(该规则any URL part could contain arabic chars
):
^(http|https|ftp)\://[a-zA-Z0-9\-\.\x0600-\x06FF\x0750-\x077F\xFB50-\xFDFF\xFE70-\xFEFF]+\.[a-zA-Z\x0600-\x06FF\x0750-\x077F\xFB50-\xFDFF\xFE70-\xFEFF]{2,3}(:[a-zA-Z0-9\x0600-\x06FF\x0750-\x077F\xFB50-\xFDFF\xFE70-\xFEFF]*)?/?([a-zA-Z0-9\-\._\?\,\'/\\\+&%\$#\=~\x0600-\x06FF\x0750-\x077F\xFB50-\xFDFF\xFE70-\xFEFF])*$
的最佳选择是使用为一个Unicode chracter class。这将是\p{Arabic}
您的情况。但不要忘记,最后还应该添加Unicode PCRE修饰符/u
。
请写出完整的regex – Abudayah 2011-01-30 10:49:10
将[a-zA-Z0-9]
替换为[\pL0-9]
,并且不要忘记正则表达式结尾处的Unicode PCRE修饰符/u
。
请写出完整的regex – Abudayah 2011-01-30 10:50:09