谢谢楼上的。一般手册讲的不一定详细,我只是想要实例。不知道你的手册如何?
我只是想了解一下下面的用法:
\b
word boundary
\B
not a word boundary
\A
start of subject (independent of multiline mode)
\Z
end of subject or newline at end (independent of multiline mode)
\z
end of subject (independent of multiline mode)
我只是想了解一下下面的用法:
\b
word boundary
\B
not a word boundary
\A
start of subject (independent of multiline mode)
\Z
end of subject or newline at end (independent of multiline mode)
\z
end of subject (independent of multiline mode)
’er\b’ 可以匹配"never" 中的 ’er’,但不能匹配 "verb" 中
的 ’er’。
\B 匹配非单词边界。’er\B’ 能匹配 "verb" 中的 ’er’,但不能匹
配 "never" 中的 ’er’。
这是我所知道的。关于你说的另外的3个用法,我没有用过,也没有见人用过,请教一下其他人再^_^浅妄薄见,望与斟酌
\A和^的区别
不管有没有multiline, \A都只匹配串的开始位置
而当设了multiline,^ 也匹配 '\n' 或 '\r' 之后的位置\z\Z和$的区别
不管有没有multiline, \z\Z都只匹配串的结束位置
而当设了multiline,$ 也匹配 '\n' 或 '\r' 之前的位置\z和\Z的区别
\Z不管最后一行是否是新行,忽略,但\z不忽略
<?
$str='1234
1234
51234
';
echo "<br>^:".preg_replace("|^1234|m","",$str);
echo "<br>A:".preg_replace("|\A1234|m","",$str);echo "<br>$:".preg_replace("|1234$|m","",$str);
echo "<br>Z:".preg_replace("|1234\Z|m","",$str);
echo "<br>z:".preg_replace("|1234\z|","",$str);
?>