【问题标题】:JavaScript RegExp - the "." is "cutting" the letter after it (highlight search result) [duplicate]JavaScript RegExp - “.”正在“剪切”它后面的字母(突出显示搜索结果)[重复]
【发布时间】:2018-07-23 14:59:37
【问题描述】:

我有这个code

 getText: function(record) {
     var inSearch = Ext.getCmp("incidentsFilters__search").value;
     var replaceWith = '<span class="search-results-colored-text" >'+inSearch+'</span>';
     var record = record.text.join(', '); 

     record = record.replace(new RegExp(inSearch,"g"), replaceWith);

     return record;
}

当我搜索 " .e " 时,它会返回如下内容:

它应该返回这样的东西(当我搜索 ".exe" 时它工作正常)

我想我应该在我的RegExp 中添加一些内容,但不知道是什么。

【问题讨论】:

    标签: javascript regex extjs highlight search-regex


    【解决方案1】:

    您需要转义 .,因为它匹配任何字符。这是一个简化版本。

    var myFile = 'myFile.exe'
    
    myFile.match(/.e/g) // matches [ 'le', '.e', 'xe' ]
    myFile.match(/\.e/g) // matches [ '.e' ]
    

    您应该将.replace('.', '\.') 添加到搜索值中。

    【讨论】:

      猜你喜欢
      • 2017-04-22
      • 2014-03-07
      • 2010-09-16
      • 2021-06-01
      • 2018-03-05
      • 2012-02-16
      • 2014-07-25
      • 2019-06-30
      • 1970-01-01
      相关资源
      最近更新 更多