我正在尝试编写一个可以匹配可能包含中文字符的字符串的正则表达式。例子:
hahdj5454_fd.fgg"
example.com/list.php?keyword=关键字
example.com/list.php?keyword=php
我正在使用这个表达式:
$matchStr = '/^[a-z 0-9~%.:_\-\/[^x7f-xff]+$/i';
$str = "http://example.com/list.php?keyword=关键字";
if ( ! preg_match($matchStr, $str)){
exit('WRONG');
}else{
echo "RIGHT";
}
它匹配类似dasdsdsfds
or的纯英文字符串http://example.com/list.php
,但不匹配包含中文字符的字符串。我该如何解决这个问题?