自定义插入子串、删除子串、替换子串函数
本文地址:http://www.cnblogs.com/veinyin/p/7646668.html
仅给出实现简单代码,如需考虑健壮性,可根据此思路进一步完善
基本实现思路是先根据传入位置把字符串进行切割,操作后进行拼接
插入子串
1 /* 2 * 插入子串 3 * */ 4 5 var is = "haha"; /* 插入子串 */ 6 var str = "hello veinyin"; /* 父串 */ 7 8 /* 参数为: 父串 子串 插入位置 */ 9 function insertStr(ss,s,index){ 10 var fonts = ss.slice(0,index); /* 开头子串 */ 11 var ends = ss.slice(index); /* 尾部子串 */ 12 return fonts + s + ends; /* 拼接后的新串 */ 13 } 14 15 insertStr(str,is,4); 16 17 /* 18 * 插入子串结束 19 * */
删除子串
1 /* 2 * 删除子串 3 * */ 4 5 /* 参数为: 父串 要删除的子串 */ 6 function deletestr(ss,s) { 7 var fontS = ss.slice(0,ss.indexOf(s)); /* 子串前面部分 */ 8 var endS = ss.slice(ss.indexOf(s) + s.length); /* 子串后面部分 */ 9 var newStr = fontS + endS; /* 操作结果 */ 10 return newStr; 11 } 12 13 var str = "hello world"; 14 var ds = "lo"; 15 deletestr(str,ds); 16 17 /* 18 * 删除子串结束 19 * */
替换子串
1 /* 2 * 替换字符串 3 * */ 4 5 /* 父串 要替换的旧子串 替换旧子串的新子串 */ 6 function replaceStr(ss,oldsS, newS) { 7 var fontS = ss.slice(0, ss.indexOf(oldsS)); 8 var endS = ss.slice(ss.indexOf(oldsS) + oldsS.length); 9 var newStr = fontS + newS + endS; 10 return newStr; 11 } 12 13 replaceStr("hello world", "world", "vinyin"); 14 15 /* 16 * 替换字符串结束 17 * */
还可以把字符串转换成数组,用数组的 splice() 方法
1 str = "hello".split(""); 2 str.splice(1,2,"ii"); 3 console.log(str.join(""));
上面代码也简单实现了替换功能
END~~~≥ω≤
转载于:https://www.cnblogs.com/veinyin/p/7646668.html
自定义插入子串、删除子串、替换子串函数相关推荐
- 给定2个字符串,如何计算变化(插入、删除、替换)?【levenshtein distance 算法】
给定2个字符,计算字符串发生了那些变化(插入.删除.替换) import { insert, remove, update } from "ramda"; // 计算差异度 exp ...
- 《从零开始学Swift》学习笔记(Day 14)——字符串的插入、删除和替换
原创文章,欢迎转载.转载请注明:关东升的博客 对应可变字符串可以插入.删除和替换,String提供了几个方法可以帮助实现这些操作.这些方法如下: splice(_:atIndex:).在索引位置插入字 ...
- slice和splice数组的截取/splice可以插入、删除、替换/数组截取 slice的详细解释
数组截取 slice slice是从第几位开始截取,但是不包括第几位,假如从第一位开始截取,到第三位,那么就是不包括第一位,直接去第二位和第三位. 他的参数可以写1个arr.slice(1),可以写两 ...
- JS--JavaScript节点插入、删除、替换、克隆(appendChild、cloneNode、insertBefore、normalize、removeChild、replaceChild)
操作节点 Node类型为所有节点定义了很多原型方法,以方便对节点进行操作,其中获得所有浏览器一致支持的方法如下表: Node类型原型方法说明: 方法 说明 appendChild() 向节点的子节点列 ...
- 每天一道LeetCode-----使用最少的操作将一个字符串转换成另一个字符串,只有插入,删除,替换三种操作
Edit Distance 原题链接Edit Distance 题目要求,输入两个字符串word1和word2,计算可以将word1转换成word2的最小的操作次数,可以执行的操作如下,每个操作算作1 ...
- 【JavaScript】DOM节点-创建、插入、删除、替换、克隆节点
文章目录 DOM节点 创建节点 1. 创建元素节点 2. 创建文本节点 插入节点 1. appendChild() 2. insertBefore() 删除节点 1. removeChilde() 2 ...
- c语言 替换字符串中的子串,字符串中的子串替换
在很多编程语言中,都封装了字符串替换的操作,那么我们这里自己用C语言来实现一个字符串替换的函数.具体需求为:Replace(String S,String T,String V),用V替换主串S中出现 ...
- c语言删除文件中的结构体_C语言插入、删除、更改文件内容
我们平时所见的文件,例如 txt.doc.mp4 等,文件内容是按照从头到尾的顺序依次存储在磁盘上的,就像排起一条长长的队伍,称为顺序文件. 除了顺序文件,还有索引文件.散列文件等,一般用于特殊领域, ...
- 第十一章 文件操作_C语言插入、删除、更改文件内容
我们平时所见的文件,例如 txt.doc.mp4 等,文件内容是按照从头到尾的顺序依次存储在磁盘上的,就像排起一条长长的队伍,称为顺序文件. 除了顺序文件,还有索引文件.散列文件等,一般用于特殊领域, ...
最新文章
- 求职华为,被问观察者模式,从没有这种体验!!!
- 细说Python Lambda函数的用法,建议收藏!
- 第12天--css三种定位及z-index
- jenkins pipeline之如何串联多个Job
- 并发与计算机体系结构
- php短信接口怎么用,php短信接口接入详细过程
- python舞蹈链数独游戏
- 浅学socket及iOS中的AsyncSocket框架
- vue+echarts+springboot实现云词图
- python 恶搞(仿粽子写的)
- 中国大学MOOC(慕课)网课答案怎么查?
- 关于推荐系统的全面调研与探讨!千万别错过!
- 最新WordPress二次元博客主题Sakurairo模板源码+多彩且实用
- CCleaner解决的三个问题
- sin函数对照表_三角函数表值对照表格
- W5500+DHCP+DNS+MQTT
- springboot毕设项目大学生租房系统s9331(java+VUE+Mybatis+Maven+Mysql)
- ppt文件损坏怎么修复?实用方法不要错过
- MIPS指令集中LB和LW的区别
- 【MySQL 第三天数据库表 增删改查】
热门文章
- 'nmake' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
- consul配置mysql集群_consul1.6实现Mysql-Gtid主从读写分离和高可用-03
- mysql base dir_install_mysql57.sh
- namenode无法启动_大数据系列教程003-hadoop伪分布式环境搭建步骤11-启动与验证环境...
- iphone远没有android好用,抛弃iPhone转投Android 我竟没有一丝留恋
- testng_TestNG @工厂注释
- 开课吧课堂之throws如何去使用?
- 物联网架构成长之路(18)-接阿里云OSS服务
- 我在百度运维的成长经历 之五
- 英国科研学术网络Janet遭遇DDoS攻击