php字符串查找 strstr preg_match
PHP里用于查找或匹配或定位的函数非常多,他们都有不同的意义,这里只讲述用得比较多的strstr,stristr.后者和前者的功能,返回值都相同,只是不区分大小写.
strstr("母字符串", "子字符串")用来查找子字符串在母字符串中第一次出现的位置,并返回母字符串中从子字符串开始到母字符串结束的部分,比如:
echo strstr("abcdefg", "e"); //将输出 "efg"
如果未找到子字符串,则返回空,因为能用来判断一个字符串中是否含有另外一个字符串,代码如下:
$needle = "iwind";  
	$str = "i love iwind";  
	if (strstr($str, $needle))  
	{  
	    echo "里面有 iwind";  
	}  
	else  
	{  
	    echo "里面没有 iwind";  
	}将会输出"里面有 iwind".
preg_match正则:preg_match 兼容的正则表达式语法中,代表单词边界,所以,下面应该是可以?代码如下:
$a="test,admin,abc"; 
	$b="te"; 
	$exist=preg_match("/{$b}/",$a); 
	if($exist) 
	{ 
	echo "存在"; 
	}else 
	{ 
	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.
示例,代码如下:
<?php 
	$a = "abcdefgabcdefaaag"; 
	preg_match('|abc([a-z]+)g|isu',$a,$out1); 
	preg_match_all('|abc([s]+)g|isu',$a,$out2); 
	echo "<pre>"; 
	print_r($out1); 
	 
	print_r($out2); 
	echo "</pre>"; 	写法,使用双引号时和单引号的不同,代码如下:
<?php 
	preg_match_all("/href="(.*)"/isu",$contents,$out); 
	preg_match_all('|href="(.*)"|isu',$contents,$out); 	               
               
本文地址:http://www.phprm.com/develop/fs5711.html
转载随意,但请附上文章地址:-)