龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

PHP中一些可以替代正则表达式函数的字符串操作函数(2)

时间:2014-11-18 11:37来源:网络整理 作者:网络 点击:
分享到:
复制代码 代码如下: php /* * 找到字符串中最后一次出现的位置 * strrpos()函数搜索字符串的最后出现的位置,返回它的位置(数值序号)其形式为: * int s

复制代码 代码如下:

<?php
/*
 * 找到字符串中最后一次出现的位置
 * strrpos()函数搜索字符串的最后出现的位置,返回它的位置(数值序号)其形式为:
 * int strrpos(string str,char substr [,offset])
 * 可选参数offset确定strrpos()函数的开始搜索位置。加入希望缩短冗长的新闻总结,
 * 截取总结中的某些部分,并用省略号代替所截去的部分。然而,并非简单的将总结明确的剪为所需的长度,
 * 你可能希望以一种对用户友好的方式进行剪切,截取到与阶段长度最接近的单词末尾。
 * 如下例子所示
 */
$limit=100;
$summary="In the latest installment of the ongoing Developer.com PHP series.
   I discuss the many improvements and addtions to
   <a href=\"http:www.php.com\">PHP</a> object-oriented architecture. ";
if(strlen($summary)>$limit)
 $summary=substr($summary, 0,strrpos(substr($summary, 0,$limit)," "))."...";
echo  $summary;
?>

0x06:用另外一个字符串替换字符串的所有实例

复制代码 代码如下:

<?php
/*
 * 用另外一个字符串替换字符串的所有实例
 * str_replace()函数以区分大小写的方式用另外一个字符串奇幻某个字符串的所有实例。其形式为:
 * mixed str_replace(string occurrence, mixed replacement, mixed str [,int count])
 * 如果str中没有找到occurrence,则str保持不变,如果定义了可选参数count,则只替换str中count个currence。
 * 此函数很适合对自动获取电子邮箱地址的程序隐藏电子右键地址,如下所示:
 */
$email="lvchenyang@live.cn";
$email=str_replace("@", "(at)", $email);
echo "<br/>".$email;
?>

0x07:获取字符串的一部分

复制代码 代码如下:

<?php
/*
 * 获取字符串的一部分
 * strstr()函数返回字符串中从预定义的字符串的第一个出现开始的剩余部分(包括occurrence这个字符串)。其形式为:
 * string strstr(string str,string occurrence[,bool fefore_needle])
 * 可选参数before_needle会改变strstr()的行为,使函数返回字符串在第一个出先之前的部分。
 * 下面的例子是获取右键中的域名,结合ltrim()函数
 */
$url="lvchenyang@live.cn";
echo "<br/>".ltrim(strstr($url, "@"),"@");
?>

0x08:根据预定义的便宜返回字符串的一部分

复制代码 代码如下:

<?php
/*
 * substr()函数返回字符串中位于start和start+length之间的部分,其形式为:
 * string substr(string str,int start [,int length])
 * 如果没有指定的可选参数,则返回从start到str末尾的字符串
 * 如下所示
 */
$str="lvchenyang";
echo "<br/>".substr($str, 2,4);
//output: chen
?>

0x09:确定字符串出现的频率

复制代码 代码如下:

<?php
/*
 * 确定字符串出现的频率
 * substr_count()返回一个字符串在另外一个字符串中出现的次数。其形式为:
 * int substr_count(string str,string substring [,int offset [,int length]])
 * 可选参数offset和length指定字符串便宜(从便宜处开始尝试匹配字符串)和字符串长度(从便宜开始搜索的长度)
 * 下面的例子确定了每个单词在这个sentence中出现的次数
 */
$talk=<<<talk
I am acertain that we could dominate mindshare in this space with
our new product, extablishing a true synergy beteen the marketing
and product development teams. We'll own this space in thress months.
talk;
echo "<br/>";
$sentencearray=explode(" ", $talk);
foreach ($sentencearray as $item)
{
 echo "The word <strong>$item</strong> appears(".substr_count($talk, $item).")times<br/>";
}
?>

0x10:用另一个字符串替换一个字符串的一部分

精彩图集

赞助商链接