php 正则 不包含某字符串的正则表达式
文章主题:PHP中判断字符串是否包含另一字符串的方法
在PHP中,判断一个字符串是否包含另一个字符串有多种方法。其中,使用常见的函数strstr()和正则匹配函数preg_match()是最常用的两种方法。
方法一:使用strstr()函数
-
`strstr()`函数用于在一个字符串中查找另一个字符串,如果找到则返回从匹配点开始到原始字符串末尾的部分字符串。如果没有找到,则返回false。对于简单的需求,使用这种方式已经足够。例如:
```php
$str = "dfadfadf765577abc55fd";
if (strstr($str, "abc")) {
echo "含有abc!";
} else {
echo "不含有abc!";
}
```
方法二:使用正则匹配函数preg_match()
对于更复杂的匹配需求,比如需要匹配不包含特定字符串的情况,就需要使用正则表达式。使用正则表达式可以构建复杂的匹配模式。例如,要匹配一个字符串不包含"abc",可以使用如下正则表达式:
```php
$str = "dfadfadf765577abc55fd";
$pattern_url = "/^((?!abc).)$/is"; // 正则表达式,表示不包含"abc"的字符串
if (preg_match($pattern_url, $str)) {
echo "不含有abc!";
} else {
echo "含有abc!";
}
```
这个正则表达式的含义是:从字符串的开始到结束,不包含子串"abc"。如果不包含"abc",则匹配成功。否则,匹配失败。请注意这里的正则表达式的细节和用法需要根据具体需求进行调整。在实际使用中需要注意正则表达式的复杂性和效率问题。对于大篇幅文章的或者多处需要这种匹配的情况,可能需要考虑其他方法替代正则表达式,比如先出要匹配的文字部分,再进行验证。因为正则表达式在处理不含特定字符串的文字段时并不是非常有效的方法。对于某些特定场景,例如处理短文本或者特定格式的文本时,正则表达式仍然是非常有用的工具。在实际编程过程中需要根据具体情况选择最合适的方法。
在PHP中判断一个字符串是否包含另一个字符串有多种方法,可以根据实际需求选择合适的方法进行处理。需要注意的是正则表达式的使用需要根据具体情况进行优化和选择,以避免不必要的性能损失。
编程语言
- php 正则 不包含某字符串的正则表达式
- SqlServer中批量update语句
- 在JavaScript的正则表达式中使用exec()方法
- thinkPHP5.0框架API优化后的友好性分析
- nginx+thinkphp下解决不支持pathinfo模式
- php简单实现sql防注入的方法
- php中青蛙跳台阶的问题解决方法
- php实现表单提交上传文件功能
- jquery简单图片切换显示效果实现方法
- vue+vux实现移动端文件上传样式
- JS排序之冒泡排序详解
- vue-cli与webpack处理静态资源的方法及webpack打包的
- AngularJS基础 ng-srcset 指令简单示例
- ASP.NET防止SQL注入的方法示例
- node.js基础知识小结
- 使用XMLDOM在不支持FSO的服务器上