大家好
<code>preg_replace("%.*[\\\\/]%","",dirname(__FILE__))); </code>
我知道preg_replace — 执行一个正则表达式的搜索和替换;
这个表达式可以取当前目录的目录名,比如“c:\aaa\bbb”
,得到“bbb”
但是 "%.*[\\\\/]%"
搜索的正则中.*[\\\\/]
表示目录, 前后为什么加了%
?
十分感谢
大家好
<code>preg_replace("%.*[\\\\/]%","",dirname(__FILE__))); </code>
我知道preg_replace — 执行一个正则表达式的搜索和替换;
这个表达式可以取当前目录的目录名,比如“c:\aaa\bbb”
,得到“bbb”
但是 "%.*[\\\\/]%"
搜索的正则中.*[\\\\/]
表示目录, 前后为什么加了%
?
十分感谢
preg_replace属于PCRE(Perl兼容的正则表达式)函数,第一个参数叫做正则表达式的“模式(pattern)”,而模式需要由分隔符(delimeter)闭合包裹!分隔符可以是:正斜线(/)、hash符号(#) 、百分号(%)或取反符号(~)等。
参考PHP文档:http://php.net/manual/zh/regexp.reference.delimiters.php