【问题标题】:Using replace() with regular expressions将 replace() 与正则表达式一起使用
【发布时间】:2015-12-18 16:00:30
【问题描述】:

这是字符串:

var myString = "apple, 0.90, pear, 1.23, orange, 1.90";

我用什么正则表达式把字符串改成这样:

apple: 0.90, pear: 1.23, orange: 1.90

我想把水果末尾的逗号替换为冒号。

【问题讨论】:

  • 您需要先向我们展示您的尝试,然后我们才能告诉您错误的原因。
  • 不确定,但我想我会把这个有用的花絮留在这里:regexr.com
  • 请在此处发布一些您尝试过但无法正常工作的正则表达式代码。通常这个社区用来教鱼,而不是给鱼
  • 请参考此链接了解一些想法:stackoverflow.com/questions/3720012/…
  • 你应该更足智多谋。我给了你一个答案,也给了你第二个选项来表明有多种方法可以做事。学习如何不要这么快放弃。 javascript MDN 帮助我了解了很多东西,所以我建议将其作为资源

标签: javascript regex


【解决方案1】:

您可以将字符串拆分为数组,然后创建新字符串。像这样:

var myString = "apple, 0.90, pear, 1.23, orange, 1.90";

var array = myString.split(', ');
var output = '';
for (var i = 0; i < array.length; i += 2) {
    output += array[i] + ': ' + array[i + 1];
    output += (i - 2 == array.length) ? '' : ', ';
}

【讨论】:

  • Eeek 没有。一行简单的.replace() 将完全解决这个问题,但我们鼓励 OP 在给他们解决方案之前自己尝试。
猜你喜欢
  • 2016-12-29
  • 2011-06-19
  • 2012-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-27
  • 1970-01-01
相关资源
最近更新 更多