我目前使用Codemirror Simplemode來定義模式。CodeMirror正則表達式不匹配典型的Javascript正則表達式解析器
我有一個關鍵字的列表,我想突出顯示,並認爲我可以用我的演示替換關鍵字。在替換關鍵字之前,我注意到給出的關鍵字之前給定的正則表達式接受了字符。
具體地說,我感興趣的是改變了下面這段話:
// Rules are matched in the order in which they appear, so there is
// no ambiguity between this one and the one above
{regex: /(?:function|var|return|if|for|while|else|do|this)\b/,
token: "keyword"},
到:
// Rules are matched in the order in which they appear, so there is
// no ambiguity between this one and the one above
{regex: /\b(?:function|var|return|if|for|while|else|do|this)\b/,
token: "keyword"},
的「\ B」我在開始時加入是企圖迫使正則表達式明確解析一個詞。在幾個正則表達式測試器中的測試有以下示例正常工作:
然而,這個表達式中Codemirror失敗:
我的問題:爲什麼codemirror仍着色在第二行「功能」,當它在其他rejex測試者被拒絕?