我试图在python中使用github flavored markdown实现,但没有运气......我没有太多的正则表达式技巧。将github flavored markdown正则表达式从ruby转换为python
下面是从github Ruby代码:
# in very clear cases, let newlines become <br /> tags
text.gsub!(/(\A|^$\n)(^\w[^\n]*\n)(^\w[^\n]*$)+/m) do |x|
x.gsub(/^(.+)$/, "\\1 ")
end
,这里是我想出迄今在Python 2.5:
def newline_callback(matchobj):
return re.sub(r'^(.+)$','\1 ',matchobj.group(0))
text = re.sub(r'(\A|^$\n)(^\w[^\n]*\n)(^\w[^\n]*$)+', newline_callback, text)
那里只是似乎没有被任何影响在任何情况下: -/
如果任何人在python中有github flavored markdown的完全工作实现,除了this one(似乎不工作r换行符),我很想听听它。我真的很关心换行符。
这些都为正则表达式的测试,从GitHub的Ruby代码:
>>> gfm_pre_filter('apple\\npear\\norange\\n\\nruby\\npython\\nerlang')
'apple \\npear \\norange\\n\\nruby \\npython \\nerlang'
>>> gfm_pre_filter('test \\n\\n\\n something')
'test \\n\\n\\n something'
>>> gfm_pre_filter('# foo\\n# bar')
'# foo\\n# bar'
>>> gfm_pre_filter('* foo\\n* bar')
'* foo\\n* bar'
请发布一个**应**的工作的例子。什么**期望**和你真正得到什么。 – 2011-01-28 10:48:47