string.replace正则表达式说明

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

上一篇:unity3d入门教程


下一篇:TensorFlow版BERT源码详解之self-attention