str.replace(reg,function($0,$1,$2...,index,str){

});

$0: 匹配模式的字符串
$1...: 匹配模式子表达式的字符串,0个或多个,个数取决于子表达式的个数
index: $0在原字符串中的位置
str: 原字符串

利用此可以写出简洁的方法

例如:

1. format方法

function format(s,arg0){
  var args = arguments;
  return s.replace(/\{(\d+)\}/,function($0,$1){
    return args[($1 | 0) + 1] || '';
  })
}

format("{0} love {1}.",'I','You')//I love you

2.交换相邻单词

function fSwapWord(){
var ss = "The rain in Spain falls mainly in the plain.";
var r = ss.replace(/(\S+)(\s+)(\S+)/g, "$3$2$1"); // 交换每一对单词。
return(r); // 返回结果字符串。
}

结果:rain The Spain in mainly falls the in plain

string.replace正则表达式说明的更多相关文章

  1. python 字符串替换功能 string.replace()可以用正则表达式,更优雅

    说起来不怕人笑话,我今天才发现,python 中的字符串替换操作,也就是 string.replace() 是可以用正则表达式的. 之前,我的代码写法如下,粗笨: 自从发现了正则表达式也生效后,代码变 ...

  2. 基础笔记3(二)(专门处理String的正则表达式)

    1.常规判断一个字符串是以什么开头,是否是数字的判断方式有: a.通过比较每个字符,注意比较是字符值(ASc码值),不是字面值 String s="); //判断每个字符数组的每个字符 ch ...

  3. String.replace与String.format

    字符串的替换函数replace平常使用的频率非常高,format函数通常用来填补占位符.下面简单总结一下这两个函数的用法. 一.String.replace的两种用法 replace的用法如:repl ...

  4. [转]String.Replace 和 String.ReplaceAll 的区别

    JAVA 中的 replace replaceAll 问题: 测试code System.out.println("1234567890abcdef -----> "+&qu ...

  5. JAVA中string.replace()和string.replaceAll()的区别及用法

    乍一看,字面上理解好像replace只替换第一个出现的字符(受javascript的影响),replaceall替换所有的字符,其实大不然,只是替换的用途不一样.    public String r ...

  6. Java String.replace()方法

    Java String.replace()方法用法实例教程, 返回一个新的字符串,用newChar替换此字符串中出现的所有oldChar 声明 以下是java.lang.String.replace( ...

  7. .net 基础错误-string.replace 方法

    1.string string.Replace(string oldValue,string newValue) 返回一个新的字符串,其中当前示例中出现的所有指定字符串都替换另一个指定字符串 错误:总 ...

  8. Python string replace 方法

    Python string replace   方法 方法1: >>> a='...fuck...the....world............' >>> b=a ...

  9. [Algo] 649. String Replace (basic)

    Given an original string input, and two strings S and T, replace all occurrences of S in input with ...

随机推荐

  1. Linux命令:修改文件权限命令chmod、chgrp、chown的区别

    chmod是更改文件的权限 chown是改改文件的属主与属组 chgrp只是更改文件的属组. (1)chmod是修改文件/目录的权限.可以有文字修改和数字修改. #chmod 777 /home/be ...

  2. yii的csv导出

    数据导出,简单的csv导出, public static function export($parameter){ if (is_array($parameter)) { $filename = da ...

  3. cocoaPod的使用

    因为准备在项目中使用bootstrap,在安装bootstrap过程中提示需要Ruby的版本在1.9.2以上,而目前使用的Ruby版本是Mac系统自带的1.8.7.所以需要对Ruby进行升级.这里使用 ...

  4. bzoj 1101 zap

    gcd(x,y)=d-->gcd(x/d,y/d)=1. 即求Σ(i<=n/d)Σ(j<=m/d) e(gcd(i,j)) 因为e=miu×1,可以卷积. 因为多组询问,需要sqrt ...

  5. epoch和Iteration

    做机器学习时遇到epoch和iteration,一开始有点迷惑.不是一个意思吗? epoch可以翻译成"回合".一个epoch内,做一次train+一次test iteration ...

  6. 【BZOJ-3438】小M的作物 最小割 + 最大权闭合图

    3438: 小M的作物 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 825  Solved: 368[Submit][Status][Discuss ...

  7. 【BZOJ-1391】order 最小割 + 最大全闭合图

    1391: [Ceoi2008]order Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1334  Solved: 405[Submit][Statu ...

  8. 表头不动,内容滚动的例子(纯css+html)

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. 硬盘分区时GPT和MBR的区别/选择

    最明显的区别是MBR最大支持2T的硬盘,而GPT则更大. 1.最先出现在Windows8中设置新磁盘,系统会询问你是想要使用MBR还是GPT分区,GPT是一种新的硬盘分区标准.GPT带来了很多新特性, ...

  10. iptables log

    iptables 日志 LOG target 这个功能是通过内核的日志工具完成的(rsyslogd) LOG现有5个选项 --log-level debug,info,notice,warning,w ...