php正則匹配以“abc”開頭且不能以“xyz”結尾的字串

suboysugar發表於2015-04-14

本文介紹下,用php正則區配以”abc”開頭的,且不能以”xyz”結尾的字串的方法,有需要的朋友參考下。

要求:
用php正規表示式匹配以“abc”開頭,但結尾不能包含“x”、“y”、“z”的字串。

解析:
abc開頭,正則這樣寫:^abc。
以abc開頭了,後面要有一串的字串
一般用[^…………]這樣來否定。
既然是否定“x”、“y”、“z”,就是[^xyz]了。
 
完整的正規表示式就是這樣:

^abc[^xyz]*$

下面是使用此正則的完整php示例,如下:

<?php
$str = `abcdef124f`;
$search = `/^abc[^xyz]*$/`;

if(preg_match($search,$str)) {
 echo $str.` 符合<br />`;
}else {
 echo $str.` 不符合<br />`;
}
//output abcdef124f 符合

$str = `abcdef12x124`;
if(preg_match($search,$str)) {
 echo $str.` 符合<br />`;
}else {
 echo $str.` 不符合<br />`;
}
//output abcdef12x124 不符合
//edit by www.jbxue.com
?>

如何聯絡我:【萬里虎】www.bravetiger.cn
【QQ】3396726884 (諮詢問題100元起,幫助解決問題500元起)
【部落格】http://www.cnblogs.com/kenshinobiy/


相關文章