2014-02-05 29 views
-3

У меня есть некоторый текст, например:Python: заменить некоторые тегов в HTML-тегов в строке

Мой текст \ Ъ лучшего \ б

, но я не могу сделать этот \ задачу, потому что

это fu ** regex? И другой текст

Как я могу заменить эти теги с HTML-теги, как следующее:

Мой текст лучший

, но я не могу сделать эту задачу, потому что

это фу ** regex? И другой текст

Тег \ b в паре, но \ a не в паре и должен содержать только следующее слово.

ответ

1

Используйте два отдельных замены:

sample = re.sub(r'\\b(.*?)\\b', r'<h5>\1</h5>', sample) 
sample = re.sub(r'\\a(\s*\w+)', r'<a href="#task">\1</a>', sample) 

Демо:

>>> import re 
>>> sample = '''\ 
... My text \\b the best \\b 
... but i cant do this \\a task because 
... this is fu** regex? And other text 
... ''' 
>>> sample = re.sub(r'\\b(.*?)\\b', r'<h5>\1</h5>', sample) 
>>> sample = re.sub(r'\\a(\s*\w+)', r'<a href="#task">\1</a>', sample) 
>>> sample 
'My text <h5> the best </h5>\nbut i cant do this <a href="#task"> task</a> because\nthis is fu** regex? And other text\n' 
>>> print sample 
My text <h5> the best </h5> 
but i cant do this <a href="#task"> task</a> because 
this is fu** regex? And other text 
Смежные вопросы