【问题标题】:Javascript searcing and replacing?Javascript搜索和替换?
【发布时间】:2011-02-20 23:28:58
【问题描述】:

我想更改一个以 'a' 开头并以 'n' 结尾的字符串。

例如:“action”我想替换 'ctio' 和所有以 'a' 开始并以 '' 结束的 'n'。

怎么办?

【问题讨论】:

    标签: javascript search replace


    【解决方案1】:
    return theString.replace(/\ba[a-z]*n\b/ig, '')
    

    【讨论】:

    • 这将替换整个单词,他只需替换an之间的字母即可。
    • 谢谢,我想用 '
    • @sun: 你想去掉 HTML 标签?
    【解决方案2】:

    在 Javascript 中:

    var substitute = "\"";
    var text = "action";
    var text = text.replace(/\b(a)([a-z]+?)(n)\b/gim,"$1" + substitute + "$3");
    // result = a"n ... if what  you really want is a double quote here
    

    【讨论】:

    • 我怎样才能用'asdasd'代替''
    • @sundowatch:只需更改分配给substitute 的字符串即可。
    • @Robusto:由于非贪婪量词和缺少单词边界,这个解决方案会出现一个单词以a开头,以n结尾并有另一个@的问题987654325@ 或 a 在单词中间的任何位置。
    • @sundowatch: T.J.克劳德给了你答案。我只想添加一个 " 是您的问题看起来想要的替换字符串。替换当然可以是任何字符串。
    • 谢谢我想用 '
    【解决方案3】:

    我不太确定您要做什么,但我猜想从“行动”到“ctio”?

    var foo = 'action';
    if (foo.substr(0,1)=='a' && foo.substr(-1,1)=='n') {
      var bar = foo.substr(1,foo.length-2);
      alert(bar); // ctio
    }

    【讨论】:

      【解决方案4】:

      试试下面这个

      str.replace(/\ba(\w+)n\b/igm,'');
      

      对于评论中的问题,请使用以下评论

      var sub = "hello";
      str.replace(/(<)(\w+)(")/igm,"$1" + sub + "$3");
      

      【讨论】:

      • 您的代码是正确的。但我想使用'
      猜你喜欢
      • 2010-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      • 2014-09-13
      相关资源
      最近更新 更多