本文章介绍了在php中查找字符串一些方法,包括有:查找字符串、查找字符串出现次数、查找字符串位置三种关于字符串查找的操作,有需要了解的朋友可进入参考参考.
php字符串查找字符可以通过strstr()、strrchr()函数来实现,两个函数的结构形式如下:
strstr($haystack, $needle)
strrchr($haystack, $needle)//$haystack表示母字符串,$needle表示要查找的字符
strstr()函数用于查找第一次出现字符的位置,并返回从此位置开始到母字符串结束的部分;
strrchr()函数用于查找最后一次出现字符的位置,并返回从此位置开始到母字符串结束的部分.
实例代码如下:
- <?php
- $a="p";
- $b="echo是php函数,p是html标记";
- $str1=strstr($b,$a);
- if($str1)
- echo $str1 ."<br>";
- else echo "找不到p" ."<br>";
-
- $str2=strrchr($b,$a);
- if($str2)
- echo $str2;
- else echo "找不到p";
- ?>
php字符串出现次数的查找可以通过substr_count()函数来实现,其结构形式:
substr_count($haystack, $needle [,$offset [,$length]])
//$haystack表示母字符串,$needl表示要查找的字符
//$offset表示查找的起点,$length表示查找的长度,均为可选参数
实例代码如下:
- <?php
- $str="this is a test";
- echo substr_count($str,'is') .'<br>';
- echo substr_count($str,'is',3) .'<br>';
- echo substr_count($str,'is',3,3) .'<br>';
- ?>
php查找字符串位置可以通过strrpos()、strpos()函数来实现.
查找最后一次的位置
用函数strrpos(),结构形式如下:
strrpos($haystack ,$needle [,$offset])
//参数$needle只能是一个字符,而不能是一个字符串.如果提供一个字符串,也只会取字符串中的第一个字符,其它字符无效;
//可选参数$offset设置查找字符串的长度.
实例代码如下:
- <?php
- $text="php";
- $str1=strrpos($text,"p");
- if($str1)
- echo "找到字符'p'" ."<br>";
- else echo "找不到字符'p'" ."<br>";
- $str2=strrpos($stxt,"q");
- if($str2)
- echo "找到字符'q'" ."<br>";
- else echo "找不到字符'q'" ."<br>";
- ?>
查找第一次的位置用strpos()函数,与函数strrpo()仅差一个字母,功能却相差很大.strpos()函数的$needle参数允许使用字符串,并且查找这个字符串在$haystack中的第一次出现的位置,而不是最后一次.
实例代码如下:
- <?php
- $text="php语言和asp语言的区别之一:php更加稳定安全";
- $str1=strrpos($text,"php");
- if($str1)
- echo "找到字符串'php',位置出现在:$str1" ."<br>";
- else echo "找不到字符串'php'" ."<br>";
- $str2=strpos($stxt,"php");
- if($str2)
- echo "找到字符串'php'" ."<br>";
- else echo "找不到字符串'php'" ."<br>";
- ?>
|