[英]Ace Editor - multiple word highlight rule
恐怕這將是一個非常挑剔的問題-我感到這將是不可能的。
我需要使用某些單詞和短語的高亮文本區域(某些CSS效果)。 以前,我已經在editarea上使用它了-但是由於它是一個死項目,所以出現了越來越多的問題,因此我正在嘗試使用另一種最新的編輯器-Ace。
我目前在使用自定義模式時能很好地強調單個單詞的集合,但是到目前為止,與正則表達式匹配的短語已被證明超出了我的范圍。
相關的模式代碼-如下所示:
var highlightWords = "word1|word2|word3|phrase one|phrase number two|etc";
var keywordMapper = this.createKeywordMapper({
"highlightWords": highlightWords
}, "identifier", true);
this.$rules = {
"start" : [
{
token : keywordMapper,
regex : "[a-zA-Z0-9_$][a-zA-Z0-9_$]*\\b"
},{
token : "text",
regex : "\\s+"
}]
我嘗試匹配2個單詞的短語如下(無效)(還試圖通過添加{2}等來匹配更長的條目,等等)
regex : "[a-zA-Z0-9_$][a-zA-Z0-9_$]*(?:\\s[a-zA-Z0-9_$][a-zA-Z0-9_$]*){1}\\b"
任何人都有讓ace正常工作的想法-或實時編輯單詞和短語突出顯示的任何更簡單的選擇?
您傳遞給keywordMapper的正則表達式與空格字符不匹配。
采用
this.$rules = {
"start" : [
{
token : "highlightWords",
regex : "word1|word2|word3|phrase one|phrase number two|etc"
}]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.