JS String中的通配符替换方法

时间:2015-03-29 12:00:25

标签: javascript

替换( “abc.example”, “示例”)。代替( “fg8uj.example”, “示例”)。代替( “okhzl.example”, “示例”)。代替( “58ki.example”, “实施例”)。

是否可以使用外卡代替abc,fg8uj,okhzl,58ki? 取代( “*。例如”, “例如”)。不行。

1 个答案:

答案 0 :(得分:0)

是的,你为第一个参数提供了一个正则表达式,并在正则表达式中使用了通配符:

str = str.replace(/\b[\w*?]*\.example/, "example);

允许任意数量的"字符"或者在?之前*.example,并且前面需要一个字边界,但是您想要进行调整。

如果你想在整个字符串中完成(不仅仅是第一个匹配),请将g标志添加到正则表达式。

有关正则表达式here on MDN的更多信息。

Here's一个与他们玩耍的好地方。

实例:



var testValues = [
  "abc.example",
  "fg8uj.example",
  "okhzl.example",
  "58ki.example"
];
testValues.forEach(function(testValue) {
  var updatedValue = testValue.replace(/\b[\w?*]+\.example/, "example");
  snippet.log(testValue + " => " + updatedValue);
});

<!-- Script provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>
&#13;
&#13;
&#13;