2011-04-26 27 views
1

如何使用正則表達式來實現Markddown的emphasisboldMarkdown重點 - 重新替換

或者怎麼可能用** **裏面的內容替換\*\*(.*)\*\*

+0

實現?正則表達式只是模式。你對模式的處理取決於你和你選擇的語言。 – 2011-04-26 23:38:14

回答

3

您可以使用re.sub()

import re 

myRegex = re.compile(r"\*\*(.+?)\*\*") 
string = "some **text** and some **more**" 

output = myRegex.sub(r"\1", string) 
+1

-1:這隻適用於字符串中有單個塊的情況(即''string =「some ** text ** plus ** other text **''失敗)。您應該使用正則表達式來執行替換:''output = myRegex.sub('\\ 1',string)'' – Blair 2011-04-27 00:25:52

+0

好的一點,我可以循環搜索,直到沒有更多的結果,但你的方式更加優雅。 – erbridge 2011-04-27 01:19:20

+0

「r」是什麼意思\ 1「'? – Halst 2011-04-27 06:09:05

2

我認爲Fantasizer有正確的觀念。

另外,你應該看一看基於Markdown Library

通過inlinepatterns.py具體看Python來看看他們是如何匹配「強」(粗體)和「重點」