>백엔드 개발 >PHP 튜토리얼 >正则表达式 - 关于PHP中大括号{}的一种用法

正则表达式 - 关于PHP中大括号{}的一种用法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-06 20:26:531306검색

<code><?php $pattern = "/[\x{4e00}-\x{9fa5}]/u";//用来匹配utf-8的中文。
$subject ="PHP好不好";
preg_match($pattern, $subject, $result);
print_r($result);//结果:Array ( [0] => 好 ) 
?></code>

请问这里的{}是什么用法?为什么要这么用?

这个问题已被关闭,原因:与已有问题重复

回复内容:

<code><?php $pattern = "/[\x{4e00}-\x{9fa5}]/u";//用来匹配utf-8的中文。
$subject ="PHP好不好";
preg_match($pattern, $subject, $result);
print_r($result);//结果:Array ( [0] => 好 ) 
?></code>

请问这里的{}是什么用法?为什么要这么用?

很容易就可以找到啊http://www.regular-expressions.info/quickstart.html
Literal Characters段,Non-Printable Characters段都有说明这种使用方法

If your application supports Unicode, use \uFFFF or \x{FFFF} to insert a Unicode character. \u20AC or \x{20AC} matches the euro currency sign.

这和PHP无关,这是正则表达式的事

在这个场景下,是用16进制表示出UTF8中汉字编码的范围

供参考: http://www.regexlab.com/zh/deelx/syntax.htm , http://www.jb51.net/tools/zhengze.html ,

这是故意黑php呢?

这里的{} 不是PHP语法里面的{},这个明显是匹配某个字符集的字符,和字符集相关!!!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.