200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > php 正则匹配是否存在字符 php 正则 不包含某字符串的正则表达式

php 正则匹配是否存在字符 php 正则 不包含某字符串的正则表达式

时间:2021-06-15 06:48:50

相关推荐

php 正则匹配是否存在字符 php 正则 不包含某字符串的正则表达式

常见函数 strstr($str, “abc”);

正则匹配 preg_match(”/(abc)?/is”, $str);

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

如果不用正则 !strstr($str, “abc”); 就可以解决问题了

但是用正则呢,就只有这样了,”/^((?!abc).)*$/is”

//------------------------------------------------

$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. 如果不用正则如下就可以解决问题

!strstr($str, "abc");

2. 但是用正则呢,就只有这样了

preg_match("/^((?!abc).)*$/is", $str);

完整代码示例

$str = "dfadfadf765577abc55fd";

$pattern_url = "/^((?!abc).)*$/is";

if (preg_match($pattern_url, $str))

{

echo "不含有abc!";

}

else

{

echo "含有abc!";

}

结果为:false,含有abc!

同时匹配,包含字符串 "abc",而且不包含字符串 "xyz"的正则表达式:

preg_match("/(abc)[^((?!xyz).)*$]/is", $str);

该方法有效,本人使用方法如下:

(?:(?!).|\n)*? //匹配不含

的一个字符串

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。