我想将正则表达式存储在要多次使用的变量中。例如,我有一些正则表达式使用逗号https://jsfiddle.net/Le7wayee/分隔数字:

var numAcquired = 1400000
numAcquired = numAcquired.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");


它的输出当然是字符串1,400,000,但是我在许多包含不同数字/长度的变量上使用了很多次,为了简单起见,我宁愿将其存储在变量中,而不是显式地每次都写。这有可能吗?

最佳答案

只需将regexp分配给变量:



var numberCommasRegexp = /\B(?=(\d{3})+(?!\d))/g;

var numAcquired = 1400000;
numAcquired = numAcquired.toString().replace(numberCommasRegexp, ',');

alert(numAcquired);





但是,您不必定义所有函数,而不必始终编写replace()表达式。



function addCommas(number) {
  return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
var numAcquired = 14000000;
numAcquired = addCommas(numAcquired);
alert(numAcquired);

关于javascript - 使用包含正则表达式的变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31083173/

10-11 02:20