2017-03-04 1 views
0

私はいくつかの文字列を持っています。私はmark.jsをハイライト表示しています。mark.jsを使用して単語のマークを解除する

"item1 and item2" 
"item2 and item3" 

通常の段落では私が持っているでしょう:

ITEM1は別のものである第一の目的ITEM2です。

太字の項目は、mark.jsの強調表示ですが、[and、or]のようないくつかの単語を除外したいと思います。

どうすれば除外できますか、それとも選択解除できますか?すぐあなたも無効separateWordSearchで文章を一致させるために、ワイルドカードで単語を置き換えることができますマージされthis PRとして

+0

'mark'関数に渡す前にフィルタリングする文字列を手動でフィルタリングしないのはなぜですか? –

答えて

1

var ignoreWords = [ 
 
    "the", 
 
    "and" 
 
    ], 
 
    keywords = [ 
 
    "item1 and item2", 
 
    "item2 and item3" 
 
    ], 
 
    optimizedKeywords = keywords.map(function(val) { 
 
    for (var i = 0, len = ignoreWords.length; i < len; i++) { 
 
     val = val.replace(new RegExp(ignoreWords[i], "gmi"), ""); 
 
    } 
 
    return val; 
 
    }); 
 
new Mark(".context").mark(optimizedKeywords);
<script src="https://cdn.jsdelivr.net/mark.js/8.8.3/mark.min.js"></script> 
 
<div class="context"> 
 
    item1 and item2<br> item2 the item3 
 
</div>

関連する問題