【问题标题】:Javascript replacing with just one replacing option仅用一个替换选项替换 Javascript
【发布时间】:2021-07-30 17:18:33
【问题描述】:

我目前正在清理代码,并且我有这个 JS 表达式将坏代码替换为:

str.replace(/[\W_,.]/g,'-').toLowerCase();

如果用户输入此 a+ñ4a_i4a 我的代码 JS 将替换为 => a--4a-i4a 这个想法很好,但没有这么多 - - - -。如果它们在一起,它应该用一个连字符替换所有连字符。

所以代码应该输出a-4a-i4a

知道如何替换出现的相同多个字符吗?

【问题讨论】:

    标签: javascript replace str-replace


    【解决方案1】:

    您可以重复字符类[\W_,.]+来匹配所有连续匹配,然后替换为单个-

    console.log("a+ñ4a_i4a".replace(/[\W_,.]+/g, '-').toLowerCase());

    【讨论】:

    • 请注意代码上的+/g,它可以解决所有问题。致敬@第四只鸟
    猜你喜欢
    • 2018-11-17
    • 2013-06-15
    • 1970-01-01
    • 2022-12-02
    • 2018-07-13
    • 2018-11-30
    • 2013-10-31
    • 2011-03-13
    • 1970-01-01
    相关资源
    最近更新 更多