2015-08-30 6 views
1

Я хочу создать пользовательские теги уценки, используя showdown.js таким образом, что:showdown.js расширение: соответствие Multiword расширение

==highlighted text== 

оказывает:

<mark>highlighted text</mark> 

Использование twitter расширения в качестве базовой линии, у меня пытались:

// #highlighted# syntax 
    { 
    type: 'lang', 
    regex: '\\B(\\\\)?==([\\S]+)\\b', 
    replace: function (match, leadingSlash, highlighted) { 
     // Check if we matched the leading \ and return nothing changed if so 
     if (leadingSlash === '\\') { 
     return match; 
     } else { 
     return '<mark>' + highlighted + '</mark>'; 
     } 
    } 
    }, 

Но это только позволяет мне highlig ht одиночные слова, например.

  • == Яблоко == Груша
  • Яблоко Груша

Я хотел бы использовать == аналогичную **.

Я предполагаю, что проблема в регулярном выражении, но, похоже, не может ее прибить. Может ли кто-нибудь посоветовать?

ответ

1

Если я правильно понял вопрос правильно, вы можете использовать это простое регулярное выражение:

regex: "==\\s*(.+?)\\s*=="; 

и использовать согласованную группу # 1.

RegEx Demo

Смежные вопросы