热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

str_replace只替换一次字符串办法

php教程|php手册str_replacephp教程-php手册php一元夺宝源码,vscodecout中文,ubuntu服务器鼠标卡死,tomcat进不去,sqlite在安卓,

php教程|php手册str_replace只替换一次字符串办法
str_replace
php教程-php手册
php一元夺宝源码,vscode cout中文,ubuntu服务器鼠标卡死,tomcat 进不去,sqlite在安卓,鼠标经过图片放大js特效插件,前端开发的主要框架,尾巴卷卷的爬虫,php 数组url,企业开展seo,小程序网站源码,织梦cms 网页播放器,动网8.2模板,delphi 隐藏程序lzw
我们都知道,在PHP里Strtr,strreplace等函数都可以用来替换,不过他们每次替换的时候都是全部替换,但是如果你想只替换一个或两个怎么办呢?看下边的解决方法
易语言源码案例,ubuntu 终端创建用户,服务器上tomcat配置,电子爬虫怎么写,怎么提高php的技术学习,通化seo排名lzw
微信营销平台 源码,ubuntu提取音频软件,tomcat 4.1下载,python爬虫主题,php分析docx内容,贵州人工智能seo优化外包lzw

我们都知道,在PHP里Strtr,strreplace等函数都可以用来替换,不过他们每次替换的时候都是全部替换,举个例子:
“abcabbc”,这个字符串如果使用上边的函数来把其中的b替换掉,那么他会全部替换掉,但是如果你想只替换一个或两个怎么办呢?看下边的解决方法:
这是个比较有点意思的问题,正好之前也做过类似的处理,当时我是直接利用preg_replace实现的。

mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )
在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。
因为preg_replace的第四个参数可以实现替换次数的限制,所以这个问题这样处理很方便。但是在查看php.net上关于str_replace的函数评论后,从中居然也可以挑出几个有代表性的函数来。

str_replace_once
思路首先是找到待替换的关键词的位置,然后利用substr_replace函数直接替换之。

代码如下:

function str_replace_once($needle, $replace, $haystack) {

// Looks for the first occurence of $needle in $haystack

// and replaces it with $replace.

$pos = strpos($haystack, $needle);

if ($pos === false) {

return $haystack;

}

return substr_replace($haystack, $replace, $pos, strlen($needle));

}

?>

str_replace_limit
还是利用preg_replace,只不过它的参数更象preg_replace了,而且对某些特殊字符做了转义处理,通用性更好。
代码如下:

function str_replace_limit($search, $replace, $subject, $limit=-1) {

// constructing mask(s)…

if (is_array($search)) {

foreach ($search as $k=>$v) {

$search[$k] = ‘`’ . preg_quote($search[$k],’`’) . ‘`’;

}

}

else {

$search = ‘`’ . preg_quote($search,’`’) . ‘`’;

}

// replacement

return preg_replace($search, $replace, $subject, $limit);

}

?>


推荐阅读
  • linux怎样设置代理
    运维|linux运维linux运维-linux运维asp源码吧404,vscode从码云上拉分支,efiubuntu驱动,tomcat创我的世界,上海爬虫展,php要学哪些东西,阿 ... [详细]
  • php教程|php手册双引号单引号php教程-php手册手机企业网站源码,vscode写LaTeX,ubuntu安装vncview,tomcat异常堆栈,sqlite直接csv,查 ... [详细]
  • 摘自织梦CMS中的图片处理类【PHP】
    后端开发|php教程织梦CMS,图片处理类后端开发-php教程本文实例讲述了摘自织梦CMS中的图片处理类。分享给大家供大家参考。具体如下:微信商城三级分销源码,vscode电脑卡住 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • Linux下部署Symfoy2对app/cache和app/logs目录的权限设置,symfoy2logs
    php教程|php手册xml文件php教程-php手册Linux下部署Symfoy2对appcache和applogs目录的权限设置,symfoy2logs黑色记事本源码,vsco ... [详细]
  • java程序设计试题_《Java语言程序设计》期末考试模拟试题——填空题和编程题...
    一、根据题意,填写出空格中的内容Java平台包括三个技术方向,其中J2ME代表____________、J2SE代表___________、J2EE代表 ... [详细]
  • 校园表白墙微信小程序,校园小情书、告白墙、论坛,大学表白墙搭建教程
    小程序的名字必须和你微信注册的名称一模一样在后台注册好小程序。mp.wx-union.cn后台域名https。mp.wx-union.cn ... [详细]
  • Redis抢票先进先出
    php教程|php手册Redis,抢票,先进,先出,Redis+Thinkphp,php教程-php手册手机端模版源码,vscode怎么写c加加,ubuntu安装.run,tomc ... [详细]
  • JavaScript是什么?有什么功能?
    web前端|前端问答JavaScriptweb前端-前端问答net源码运行环境,平板如何刷Ubuntu,爬虫盒子里防滑,php阅读,蚌埠seo培训lzw本文操作环境:windows ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一,尤其是在大规模系统中,数据库集群已经成为必备的配置之一。文章详细介绍了主从数据库架构的好处和实验环境的搭建方法,包括主数据库的配置文件修改和设置需要同步的数据库等内容。MySQL的主从复制功能在国内外大型网站架构体系中被广泛采用,本文总结了作者在实际的Web项目中的实践经验。 ... [详细]
  • 本文介绍了在Ubuntu 11.10 x64环境下安装Android开发环境的步骤,并提供了解决常见问题的方法。其中包括安装Eclipse的ADT插件、解决缺少GEF插件的问题以及解决无法找到'userdata.img'文件的问题。此外,还提供了相关插件和系统镜像的下载链接。 ... [详细]
  • Photoshop打造简单的半月立体图形
    web前端|PS教程半月,立体图形web前端-PS教程最终效果动易公安网站源码,ubuntu菜单还是英文,爬虫入门书籍价格,Phpelk,襄阳seo技巧lzwjar包源码下载,vs ... [详细]
author-avatar
faerbersitko
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有