本文初步介绍 replace 在 js 中,我们常常会遇到 用来 解决开发中常会遇到的 问题的 知识总结, 如果你已经 非常熟悉,又可以绕道了。

定义和用法

replace() 方法用于在字符串中常用的一些字符串替换。 在我们的日常开发中常常会遇到字符串替换的相关问题。 那么 学会 replace 用法,在日常的开发中可以节约很多的时间。

语法

stringObject.replace(regexp,replacement)

stringObject:  字符串对象

regexp:正则表达式

replacement: 你需要替换成的内容,这里可以是 字符串,也可以是函数。

返回值

一个新的字符串,对应需要替换的内容已被替换掉。

具体实践

Tips: 上文中介绍的 replacement 【对应需要替换的替换项】
其中包含了一部分具体的 正则符号的内容,在开始实践之前,先介绍其中的 正则符号的意义。
1. $1、$2、...、$99  与 regexp 中的第 1 到第 99 个子表达式相匹配的文本。
2. $& 与 regexp 相匹配的子串。
3. $` 位于匹配子串左侧的文本。
4. $' 位于匹配子串右侧的文本。
5. % 直接量符号。 好了,下面,开始我们的具体实践。

题目:

有字符串 var = 'abc345efgabcab',

  1. 去掉字符串中的 a、b、c 字符。
  2. 将字符串中的数字 都加上 '[]'
  3. 将字符串中的 数字的值 都 乘以 2
  4. 去掉字符串中 数字之前的所有内容
  5. 去掉字符串中 数字之后的所有内容
  6. 将字符串中的 'abc' 都替换成 gg

好,题目就是这些了。我们开始吧

  1. 题目一 :去掉字符串中的 a、b、c 字符。
	var str = 'abc345efgabcab';
str.replace(/[a-c]/g, '');
	输出结果:
// "345efg"
  1. 题目二 :将字符串中的数字 都加上 '[]'
	var str = 'abc345efgabcab';
str.replace(/[\d]/g, function(num) { return '[' + num + ']' });
	输出结果:
// "abc[3][4][5]efgabcab"
  1. 题目三 :将字符串中的 数字的值 都 乘以 2
	var str = 'abc345efgabcab';
str.replace(/[\d]/g, function(num) { return '[' + num + ']' });
	输出结果:
// "abc[3][4][5]efgabcab"
  1. 题目四 :去掉字符串中 首个数字之前的所有内容
	var str = 'abc345efgabcab';
var numer = str.match(/[\d]/g)[0];
var numerIndex = str.indexOf(numer);
var res = str.substring(numerIndex,str.length);
	输出结果:
// "345efgabcab"
  1. 题目五 :去掉字符串中 数字之后的所有内容
	var str = 'abc345efgabcab';
var numers = str.match(/[\d]/g);
var numer = numers[numers.length - 1];
var numerIndex = str.indexOf(numer);
var res = str.substring(0, numerIndex + 1);
	输出结果:
// "abc345"
  1. 题目六 : 将字符串中的 'abc' 都替换成 gg
	var str = 'abc345efgabcab';
str.replace(/abc/g, 'gg');
	输出结果:
// "gg345efgggab"

以上就是 几天基本的入门级别的 replace 以及其周边,我们常常会在工作中遇到的问题。 mark

JavaScript 中 正则替换 replace的更多相关文章

  1. 正则替换replace中$1的用法以及常用正则

    一.repalce定义 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. stringObject.replace(regexp/substr,replacement)参数一 ...

  2. 正则替换replace中$1的用法

    一.repalce定义 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. 1 2 3 4 5 stringObject.replace(regexp/substr,repla ...

  3. JavaScript中String.prototype.replace() 方法的使用

    摘抄于:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/replace ...

  4. JavaScript中正则的使用(1)

    通过例子学习正则中的常见语法(1) $num javascript var a = 'javascript'; var b = a.replace(/(java)(script)/gi, '$2-$1 ...

  5. JavaScript中正则使用

    字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在.比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦, ...

  6. javascript中正则动态替换为对象中的相应数据

    使用正则进行替换以下内容 var str = 'aKey={aValue}&bKey={bValue}' 使用以下对象数据,替换value var obj = { aValue: 1, bVa ...

  7. javascript中href和replace比较

      在使用javascript的时候,有时候对于经常使用的方法太熟悉而忽略了他们之间原理的细微差别.举例如下:window.location.href,window.location.replace. ...

  8. PHP中正则替换函数preg_replace用法笔记

    今天应老板的需求,需要将不是我们的页面修改一个链接,用js+iframe应该也能实现,但是我想尝试一下php实现方法. 首先你得先把别人的页面download到你的php中,实现方法可以用curl, ...

  9. JavaScript 中正则匹配时结果不一致的问题

    创建示例项目 考察如下场景,我们有个输入框组件,输入时同时进行校验. interface IInputProps { label: string; } function Input({ label } ...

随机推荐

  1. url.cn短网址批量缩短开发接口

    https://www.showapi.com/api/view/1728 //md5签名方式--非简单签名 <?php header("Content-Type:text/html; ...

  2. windows下编译Boost

    当前boost最新版本为1.55,下载地址:http://sourceforge.net/projects/boost/files/boost/1.55.0/或者从官网(www.boost.org)下 ...

  3. Hive表生成函数explode讲解

    Hive中的表分析函数接受零个或多个输入,然后产生多列或多行输出. 1.explode函数 explode函数以array类型数据输入,然后对数组中的数据进行迭代,返回多行结果,一行一个数组元素值 A ...

  4. Jenkins pipeline job 根据参数动态获取触发事件的分支

    此文需要有Jenkins pipeline job 的简单使用经验 场景 我们日常的测试函数, 一般是不能仅仅在本地跑的,还需要一个公共的跑测试的环境,作为合并新的PR的依据. 如果用Jenkins ...

  5. mysql 字符编码

    安装的是mysql5.6 社区版 安装之后编码设置为utf8 mysql的ini文件中 [mysql] default-character-set=utf8 [mysqld] default-char ...

  6. SpringBoot 中 @RestController 和 @Controller 的区别

    1 - 在springboot中,@RestController 相当于 @Controller + @ResponseBody;2 - 即在Controller类中,若想返回jsp或html页面,则 ...

  7. git mvn 使用

    git 更换远程仓库地址: stps:先删除远程仓库地址,然后再添加 [git remote rm origin] 删除现有远程仓库 [git remote add origin url]添加新远程仓 ...

  8. Python基础之面向对象3(继承)

    一.继承相关概念 1.语法: 2.定义: 3.优缺点: 4.相关概念: 5.相关内置函数: 6.继承内存图: 7.多继承: 二.多态相关概念 1.定义及作用: 2.重写概念: 3.运算符重载: 定义: ...

  9. ArrayList源码理解

    ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存. ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Col ...

  10. MQTT在react-native中的运行

    mqtt 1.什么是mqtt? MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式 ...