【问题标题】:How to Find and replace parts of string in case insensitive way?如何以不区分大小写的方式查找和替换部分字符串?
【发布时间】:2011-10-26 14:08:45
【问题描述】:

我有这样的simple example. 我想替换例如add ann.c 中的文本,就像我在add Ann.c 中替换它一样。用 jQuery 怎么做?

Here 是我的做法:$("#tags").val().replace(dictionary[j]['name'].toLowerCase(), dictionary[j]['realvalue']); 抱歉打扰...但欢迎任何更优化的解决方案。

【问题讨论】:

标签: javascript jquery html string replace


【解决方案1】:

String.replace() 与设置了i(不区分大小写)标志的正则表达式对象一起使用。

只要escape that string first,您就可以安全地从任意字符串构建正则表达式对象。

【讨论】:

    【解决方案2】:
    $("#tags").val().toLowerCase(); // will convert all uppercase characters to lowercase ones
    

    然后它会寻找例如ann.c 所以你需要改变对象:

    var dictionary = jQuery.parseJSON('[ { "name": "ann.c",  "realvalue": "./34534j435345j3b3"  }, {   "name": "ann.h",   "realvalue": "./333dfsdGjh45j3b5" }]');
    

    顺便说一句:

    var dictionary = [ { "name": "ann.c",  "realvalue": "./34534j435345j3b3" },
                       { "name": "ann.h",  "realvalue": "./333dfsdGjh45j3b5" } ];
    

    http://jsfiddle.net/pimvdb/uDdbq/18/

    【讨论】:

      【解决方案3】:
      var text = $("#tags").val().replace(RegExp(dictionary[j]['name'],"i"), dictionary[j]['realvalue']);
      

      您可以将字符串转换为正则表达式并添加不区分大小写。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-05-01
        • 2012-01-19
        • 2013-03-14
        • 1970-01-01
        • 1970-01-01
        • 2010-09-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多