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

 我来答
匿名用户
推荐于2017-08-23
展开全部

常见函数 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”

以下是补充:

判断一个字符串中是否含有另一字符串,有很多方法,如下:

1. 常见函数

strstr($str, "abc");

2. 正则匹配

preg_match("/(abc)/is", $str);

但是要匹配一个字符串中,不包含某字符串,用正则就比较麻烦了。

  1.  如果不用正则如下就可以解决问题

  2. http://www.33dir.com/news/2/2167.html

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式