Мне нужно регулярное выражение для замены псевдо HTML в .NET - PullRequest
0 голосов
/ 09 апреля 2010

У меня есть такие тексты:

this is a text in [lang lang="en" ]english[/lang] or a text in [lang lang="en" ]spanish[/lang]

Мне нужно заменить их на:

this is a text in <span lang="en">english </span> or a text in <span lang="es">spanish</span>

Мне нужно регулярное выражение, а не простая замена.Языки в теге lang могут быть любыми.

Ответы [ 2 ]

1 голос
/ 09 апреля 2010

Regex:

\[lang lang="([^"]*)" \](.*?)\[/lang\]

Замена:

<span lang="$1">$2 </span> 
0 голосов
/ 09 апреля 2010

Вы можете просто заменить [/lang] на </span> и использовать

Regex.Replace(text, @"\[lang lang=""(\w+)""\]", "<span lang=\"$1\">")

для замены открывающего тега.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...