PHP检测一个字符串中是否包含另外一个字符或字符串
2022/8/25 1:24:22
本文主要是介绍PHP检测一个字符串中是否包含另外一个字符或字符串,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
编写程序的时候,经常要处理字符串,最基本就是字符串的查找,您可能需要检查字符串是否包含特定的字符或子字符串,因为您可能必须对该子字符串或字符执行某些操作。我们将使用下面的3个php内置函数来检查一个字符串是否包含特定字符。
- PHP strrpos()函数
- PHP strstr()函数
- PHP preg_match()函数
PHP strrpos()函数
strrpos() 函数查找字符串在另一字符串中最后一次出现的位置。根据strrpos() 函数的特征,我们可以使用它来判断一个字符串中是否包含指定字符串。
首先来看一下strrpos()函数的语法和参数。
语法:
strrpos(string,find,start)
参数详细描述:
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
find | 必需。规定要查找的字符。 |
start | 可选。规定在何处开始搜索。 |
注意:字符串位置从 0 开始,不是从 1 开始。
例子:
<?php //从提交的表单中获取邮件信息并保存到变量$email中 $email = $_POST['email']; //Inside if, we check using strpos function if (strpos($email, '@') !== false) { print 'There was @ in the e-mail address!'; } else { print 'There was NO @ in the e-mail address!'; } ?>
如何需要查找的字符对大小写不敏感,你可以使用strripos()。
PHP strstr()函数
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。
语法
strstr(string,search,before_search)
参数描述:
参数 | 描述 |
---|---|
string | 必需。规定被搜索的字符串。 |
search |
必需。规定所搜索的字符串。 如果此参数是数字,则搜索匹配此数字对应的 ASCII 值的字符。 |
before_search |
可选。默认值为 "false" 的布尔值。 如果设置为 "true",它将返回 search 参数第一次出现之前的字符串部分。 |
例子:
if (false !== strstr($source_str, $substring)) { echo 'Found!'; } else { echo 'Not found!'; }
PHP preg_match()函数
另一种方法是使用正则表达式结合PHP preg_match
函数检查一个字符串是否包含另一个字符 。如果匹配,此函数将返回true,否则返回false。preg_match
语法语法如下:
preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )
以下是一个非常简单的匹配:
if (preg_match("/neeDle/i", "There's a small needle in a haystack")) { echo "Found!"; } else { echo "Not found!"; }
正则表达式最后的字符“i”表示匹配不区分大小写。
以上就是本文的全部内容,希望对大家的学习有所帮助。更多教程请访问码农之家
这篇关于PHP检测一个字符串中是否包含另外一个字符或字符串的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-19php8的协程和hyperf的协程有什么区别?-icode9专业技术文章分享
- 2024-12-19php8 的fiber是什么?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-11-29使用PHP 将ETH账户的资产汇集到一个账户
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享