Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将纯文本标记更改为HTML标记以在python浏览器中显示_Python_Markup - Fatal编程技术网

将纯文本标记更改为HTML标记以在python浏览器中显示

将纯文本标记更改为HTML标记以在python浏览器中显示,python,markup,Python,Markup,好的,我正在用python编写一个函数,它接受一个文本文档,该文档用==、==、--、#text等标记(很像wikipedia)。现在,我的程序基本上必须用HTML标记(如&ndash、&mdash、text等)替换这些标记,以便它们可以在浏览器中正确显示。到目前为止,我得到的是: def tag_change (): for () in range () sub('--', '–') sub('---', '—') sub

好的,我正在用python编写一个函数,它接受一个文本文档,该文档用==、==、--、#text等标记(很像wikipedia)。现在,我的程序基本上必须用HTML标记(如&ndash、&mdash、text等)替换这些标记,以便它们可以在浏览器中正确显示。到目前为止,我得到的是:

def tag_change ():
    for () in range ()
    sub('--', '–')
    sub('---', '—')
    sub('''*''', '<i>*</i>')
    sub("'''*'''", '<b>*</b>')
    sub("==*==", "<h1>*</h1>")
    sub("#*#", "<li>*</li>")
def tag_change():
适用于范围()中的()
子('--','&ndash;'))
子('--','&mdash;'))
子(“*”、“*”)
子项(“''*'''''''''''''''''''''''.*'”)
子(“=*==”,“*”)
子(“#*#,”
  • *
  • ”)
    我走对了吗?或者我还需要包括什么?我还不太熟悉这个

    您最好的选择(如果您想编写自己的函数并避免使用现有的工具)是使用regex,这非常简单

    import re
    
    def subst(text):
       str = '#text#'
       capture = re.search('#(.+)#', str)
       return '<li>'+ capture.group(1)+ '</li>'
    
    重新导入
    def subst(文本):
    str='#文本#'
    捕获=重新搜索('#(.+)#',str)
    返回'
  • '+capture.group(1)+'
  • '
    我希望你能明白 您还可以使用诸如“==(.+)==”等模式来捕获所需内容。 您可以查看此帖子以了解有关使用re.search和re.match的更多信息

    您还可以在这里了解有关正则表达式模式构造的更多信息

    您确定要实现“另一种标记格式”吗?如果您使用的是已建立的(例如,您可以使用现有工具对其进行格式化。只要我不必导入新模块,我不介意采用哪种方式。如果我使用重构文本,我应该朝哪个方向走?您能否详细说明一下您试图实现的目标?将其作为一种学习体验来实施,构建一个文档工具,一个博客平台?