当前位置: 首页 > 图文教程 > 网络编程 > 正则表达式 > php 正则 不包含某字符串的正则表达式

正则表达式
js:正则处理超文本流
正则表达式高级学习技巧
用正则表达式来表示中文
正则表达式,相关链接
js:日期正则表达式及检测
正则表达式检查来访IP是否合法的实际应用
正则表达式简单的检查输入email是否合法程序
VBscript 的正则表达式 字符串匹配
比较不错的C#中的常用的正则表达式
EditPlus 正则替换图片ubb替换成img
向大家推荐一个收集整理正则表达式的网站
正则表达式详述第一部
正则表达式详述 二
正则表达式详述 三
正则表达式详述 四
正则(JS)re=new RegExp("^\\d*$");与re=/^\d*$/;之间区别?
用正则按最后一个"_"分割"字符
[PHP]常用正则表达式收集
一个非常不错的一个正则练习JS版
js正则匹配table tr

php 正则 不包含某字符串的正则表达式


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 393 ::
收藏到网摘: n/a

判断一个字符串中是否含有另一字符串,php有很多方法 常见函数 strstr($str, “abc”);
正则匹配 preg_match(”/(abc)?/is”, $str);
但是要匹配一个字符串中,不包含某字符串,用正则就比较麻烦了
如果不用正则 !strstr($str, “abc”); 就可以解决问题了
但是用正则呢,就只有这样了,”/^((?!abc).)*$/is”
//------------------------------------------------
复制代码 代码如下:

<?php
$str = "dfadfadf765577abc55fd";
$pattern_url = "/^((?!abc).)*$/is";
if (preg_match($pattern_url, $str)){
echo "不含有abc!";
}else{
echo "含有abc!";
}
?>

//------------------------------------------------
结果为:false,含有abc!
$str = “2b3c4d5c”;
注意:[^(abc)] 这个语法是逐个检查$str中的字符是否不在 a b c中,
preg_match(”/[^(abc)]/s”, $str, $arr);
其中字符 2 就不在 a b c 中,所以$arr返回值为2;
同时匹配,包含字符串 “abc”,而且不包含字符串 “xyz”
“/(abc)[^((?!xyz).)*$]/s”