2014-04-08 2 views
0

Мы переходим от phpbb к более простой системе, и некоторые из потребностей bbcode нуждаются в конвертировании, особенно в код «quote». В настоящее время PhpBB цитата код на основе выглядит следующим образом:Преобразование регулярных выражений на bbcode

[quote="username":nw4lek0o]The quoted text[/quote:nw4lek0o] 

, и она должна быть упрощена следующим образом:

[quote=username]The quoted text[/quote] 

Так, в основном две вещи: раздеть двойные кавычки из вокруг пользователя, и полоса строка идентификатора из открывающего и закрывающего тега.

Я плохо разбираюсь в регулярном выражении. Помогите?

+0

_suck в regex_ не должно быть оправданием для _DO его Me_ или _give мне code_. – devnull

+2

@aelor Ваше изменение _significantly_ изменило вопрос. Возможно, вы скорее сказали: _ Я не знаю regex. Вы, кажется, поощряете OP запрашивать код с вашим редактированием. – devnull

+0

@devnull, о котором попросил ОП первоначально, звучало так же. Я просто сделал это более понятным, чтобы люди могли безошибочно отметить его. – aelor

ответ

0

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

\[quote="(.+?)":.+?\](.+?)\[/quote:.+?] 

И заменить его:

[quote=$1]$2[/quote] 

Demo: http://regex101.com/r/jL3xU2

+0

Этот вопрос делает именно то, что я просил, за исключением того, что я нахожу новые строки в цитируемом тексте, которого я не ожидал. Я попытался найти место, где я мог бы вставлять/s, чтобы включать новые строки, но это не эффективно. Предложения? –

+0

Итак, вы хотите, чтобы новые линии были захвачены? –

+0

Да, я хочу, чтобы новые линии были захвачены. В качестве альтернативы, если это сложно, новые строки могут быть преобразованы в пробелы. –

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