【问题标题】:javascript replace line breaks AND special charactersjavascript替换换行符和特殊字符
【发布时间】:2023-03-31 03:50:01
【问题描述】:

我在警报中添加了一个“.replace”来删除/替换换行符和硬回车,效果很好。

alert((foo + bar).replace(/(\n|\r)/g,''));

我想添加一个类似的片段来替换特殊字符。这可以单独使用,但是如何将两者结合起来以消除中断和规范字符?

 .replace(/[^a-zA-Z0-9]/g,'_');

这是我的最佳猜测,但它不起作用....

 alert((foo + bar).replace(/(\n|\r)/g,''),(/[^a-zA-Z0-9]/g,'_'));

【问题讨论】:

    标签: javascript jquery replace special-characters line-breaks


    【解决方案1】:

    如果您想用示例中显示的不同字符串替换

    alert((foo + bar).replace(/(\n|\r)/g,'').replace(/[^a-zA-Z0-9]/g,'_'));
    

    如果两者都可以替换为空字符串

    alert((foo + bar).replace(/(\n|\r|[^a-zA-Z0-9])/g,'')
    

    【讨论】:

    • 级长。第二个选项正是我所需要的。谢谢!
    【解决方案2】:

    版本 #1

    您可以向字符串原型属性添加新方法

    String.prototype.stripSpecialChars = function() {
      return this.replace(/(\n|\r|[^a-zA-Z0-9])/g,'');
    }
    

    并使用

    (foo + bar).stripSpecialChars();
    

    版本 #2

    你也可以只写一个做同样事情的函数

    function stripSpecialChars(text) {
      return text.replace(/(\n|\r|[^a-zA-Z0-9])/g,'');
    }
    

    并使用

    stripSpecialChars(foo + bar)
    

    【讨论】:

      猜你喜欢
      • 2016-09-27
      • 1970-01-01
      • 2015-07-10
      • 2011-05-31
      • 1970-01-01
      • 2011-12-28
      • 1970-01-01
      相关资源
      最近更新 更多