javascript string对象方法replace
- 最简单的replace用法是:
var str = 'aaaaa9876b0000';
str.replace(/a/g,'A');
- 有时候我们希望只是在匹配的位置添加特定的字符:
var str = 'aaaaa9876b0000';
str.replace(/([0-9])/g,'[$1]');
以上结果为:
aaaaa[9][8][7][6]b[0][0][0][0]
- 如果我们想要对匹配的位置进行数学计算,那么我们可以将第二个参数改为函数,其返回值就是在对应位置题换的字符:
'abc123ba0c'.replace(/([0-9])/g,function(m){return 2*parseInt(m)})
以上结果为:
abc246ba0c
那么,这个函数的参数是什么呢?
第一个参数表示匹配的完整字符串,相当于 /([0-9])/g的exec方法的全局执行完之后的结果,如下:
>var reg = /([0-9])/g
>reg.exec('abc123ba0c')
["1", "1"]
>reg.exec('abc123ba0c')
["2", "2"]
>reg.exec('abc123ba0c')
["3", "3"]
>reg.exec('abc123ba0c')
["0", "0"]
正则表达式有多少个(),m后面就可以有多少个参数,这些参数就代表以上匹配结果中对应位置的内容。
这些()内的参数后面,还有一个参数,表示所有全局匹配串m在原始字符串中的起点:
>'abc123ba0c'.replace(/([a-z]+)([0-9]+)/g,function(m,p1,p2,p3,p4){console.log(m+' '+ p1 + ' '+p2+' ' + p3)})
abc123 abc 123 0
ba0 ba 0 6
javascript string对象方法replace的更多相关文章
- JavaScript String 对象方法
String 对象方法 方法 描述 anchor() 创建 HTML 锚. big() 用大号字体显示字符串. blink() 显示闪动字符串. bold() 使用粗体显示字符串. charAt() ...
- javascript string对象方法总结
1.anchor() 用于创建html锚,也就是a标签,()中可以带参数,是a标签的name属性值. var string="hello world"; document.writ ...
- JavaScript Number 对象 Javascript Array对象 Location 对象方法 String对象方法
JavaScript Number 对象 Number 对象属性 属性 描述 constructor 返回对创建此对象的 Number 函数的引用. MAX_VALUE 可表示的最大的数. MIN_V ...
- JavaScript String 对象
JavaScript String 对象 String 对象 String 对象用于处理文本(字符串). String 对象创建方法: new String(). 语法 var txt = new S ...
- 浏览器端-W3School-JavaScript:JavaScript String 对象
ylbtech-浏览器端-W3School-JavaScript:JavaScript String 对象 1.返回顶部 1. JavaScript String 对象 String 对象 Strin ...
- PowerShell String对象方法 1
PowerShell String对象方法 1 8 6月, 2013 在 Powershell tagged 字符串 / 对象 / 文本 by Mooser Lee 从之前的章节中,我们知道Powe ...
- JavaScript String 字符串方法
JavaScript String 字符串方法汇总 1.str.indexOf() 方法查找字符串中的字符串 返回 字符串中指定文本首次出现的索引(位置) JavaScript ...
- 几种String对象方法的区别
1.在String对象方法中,发现.slice()方法和.substring()方法的作用几乎相同,都是根据起始索引返回截取得到的字符串.经过查阅资料和实测得到区别: 正常情况下索引都为正值,返回值为 ...
- 【timeisprecious】【JavaScript 】JavaScript String 对象
JavaScript>String 对象 1 .From Runnob JavaScript String 对象(概览) JavaScript String 对象(教程)
随机推荐
- 编程 - 前端 - JavaScript - 库 - ECharts (开源可视化)
ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等) ...
- mysql 使用 FIND_IN_SET 来查询数据
mysql中find_in_set函数很有意思,它的功能是查找以英文逗号隔开的值,我们可以将数据存储类似为1,2,3,4格式.今天我们就来看看在thinkphp中怎样正确地使用find_in_set函 ...
- 【ospf-stub区域配置】
根据项目需求搭建好如下拓扑图 配置rt1的环回口地址及g0/0/0和g0/0/1的ip地址 配rt1的ospf 配置rt2的环回口地址和g0/0/0和g0/0/1 配置rt2的ospf 配置rt3的环 ...
- .net core 发布到docker
1. 安装docker-desktop,windows环境安装包 官方网站:https://www.docker.com/ 2.注册登陆Docker账号 安装成功后,在官方网站注册一个账号,使用账号登 ...
- 微信js sdk动态引用
一般情况下,微信的js-sdk只需要直接引用script即可 <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js&qu ...
- ubuntu系統如何啟動root用戶登陸?
之前分享過關於這個問題的文章,現在自己在分享一個關於這個問題的文章給大家.為了學習Linux,一氣之下把win10的換成了ubuntu的系統.安裝就不給大家介紹了(網上很多教程). 在我們安裝好之後, ...
- scala成长之路(5)问题记录
还是在看scala sdk源码的时候,有很多问题要考自己慢慢摸索,这里做个记录. 一. 隐式转换的作用域? 隐式转换需要三个因素 1. 己方(当前对象) 2. 转换函数 3. 对方(转换的目标类) 这 ...
- 3. 进程间通信IPC
一.概念 IPC: 1)在linux环境中的每个进程各自有不同的用户地址空间.任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间是不能相互访问. 2)如果进程间要交换数据必须通过内核,在 ...
- ARM串口控制终端命令
配置开发板eth0网络: # ifconfig eth0 10.70.12.168
- django之单表查询
一.创建表 1.创建模型: 创建名为book的app,在book下的models.py中创建模型: from django.db import models # Create your models ...