PHP中一些可以替代正则表达式函数的字符串操作函数
0x01:根据预定义的字符对字符串进行词法分析代码如下: /*
* 根据预定义的字符对字符串进行词法分析
* strtok()函数根据预定义的字符列表来解析字符串。其形式为:
* string strtok(string str,string tokens)
* strtok()函数,必须连续调用这个函数,才能完全的对一个字符串进行词法分析;每次调用该函数只是对字符串的下一部分做词法分析。但是,str参数只需要指定一次,因为函数会跟踪str中的位置,知道完全对str完成了词法分析,或者指定了心得str参数。
* 如下面的例子所示:
*/
$info="lv chen yang|Hello:world&757104454@qq.com";
//定义界定符,包括(|)(:)( )(&)
$tokens="|:& ";
$tokened=strtok($info,$tokens);
while ($tokened)
{
echo "Element:$tokened 0x02:根据预定义的定界符分解字符串代码如下: "; $words=explode(' ',strip_tags($summary)); echo "This sentence's lenght is:".sizeof($words); /* * explode()函数始终比preg_split、spilt()和spliti()快得多。因此,在不需要使用正则表达式时,一定要使用这个函数。 */ ?>0x03:将数组转换成字符串代码如下: 0x04:解析复杂的字符串代码如下: "; //$substr在log中首次出现的位置是什么 $pos=strpos($log,$substr); //查找行结束的数值位置 $pos1=strpos($log,"n",$pos); //计算时间戳的开始 $pos=$pos+strlen($substr)+1; //检索时间戳 $timestamp=substr($log,$pos,$pos1-$pos); echo "The file index.html was first accessed on: $timestamp"; /* * 函数stripos()和函数strpos()函数用法相同,唯一的区别是stripos()不区分大小写。 */ ?> 0x05:找到字符串最后一次出现的位置代码如下: $limit)
$summary=substr($summary,strrpos(substr($summary,$limit)," "))."...";
echo $summary;
?>
0x06:用另外一个字符串替换字符串的所有实例代码如下: ".$email; ?>0x07:获取字符串的一部分代码如下: ".ltrim(strstr($url,"@"),"@"); ?>0x08:根据预定义的便宜返回字符串的一部分代码如下:".substr($str,2,4); //output: chen ?> 0x09:确定字符串出现的频率代码如下: "; $sentencearray=explode(" ",$talk); foreach ($sentencearray as $item) { echo "The word$itemappears(".substr_count($talk,$item).")times"; } ?> 0x10:用另一个字符串替换一个字符串的一部分代码如下:".substr_replace($phonenum,"****",3,4); ?> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
