当前位置:首页 > PHP教程 > php应用 > 列表

php字符串查找 strstr preg_match

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-19 22:30:36 浏览: 评论:0 

PHP里用于查找或匹配或定位的函数非常多,他们都有不同的意义,这里只讲述用得比较多的strstr,stristr.后者和前者的功能,返回值都相同,只是不区分大小写.

strstr("母字符串", "子字符串")用来查找子字符串在母字符串中第一次出现的位置,并返回母字符串中从子字符串开始到母字符串结束的部分,比如:

echo strstr("abcdefg", "e"); //将输出 "efg"

如果未找到子字符串,则返回空,因为能用来判断一个字符串中是否含有另外一个字符串,代码如下:

  1. $needle = "iwind";  
  2. $str = "i love iwind";  
  3. if (strstr($str$needle))  
  4. {  
  5.     echo "里面有 iwind";  
  6. }  
  7. else  
  8. {  
  9.     echo "里面没有 iwind";  

将会输出"里面有 iwind".

preg_match正则:preg_match 兼容的正则表达式语法中,代表单词边界,所以,下面应该是可以?代码如下:

  1. $a="test,admin,abc"
  2. $b="te"
  3. $exist=preg_match("/{$b}/",$a); 
  4. if($exist
  5. echo "存在"
  6. }else 
  7. echo "不存在"

看一下相关说明:int preg_match (string pattern, string subject [,array matches [,int flags]]);

preg_match() 返回 pattern 所匹配的次数。要么是 0 次(没有匹配)或 1 次,因为 preg_match() 在第一次匹配之后将停止搜索。preg_match_all() 则相反,会一直搜索到 subject 的结尾处。如果出错 preg_match() 返回 false.

示例,代码如下:

  1. <?php 
  2. $a = "abcdefgabcdefaaag"
  3. preg_match('|abc([a-z]+)g|isu',$a,$out1); 
  4. preg_match_all('|abc([s]+)g|isu',$a,$out2); 
  5. echo "<pre>"
  6. print_r($out1); 
  7.  
  8. print_r($out2); 
  9. echo "</pre>"
  10. ?> 

写法,使用双引号时和单引号的不同,代码如下:

  1. <?php 
  2. preg_match_all("/href="(.*)"/isu",$contents,$out); 
  3. preg_match_all('|href="(.*)"|isu',$contents,$out); 
  4. ?>//开源软件:phpfensi.com

Tags: php字符串查找 preg_match

分享到: