这个问题可能是以不同的方式提出的,如果是这样,请指出我。我只是在搜索结果中找不到它。
我想解析文本以进行标记,就像 SO 上的那些。
- 例如。
* some string
对于项目符号列表 - 例如。
*some string*
斜体文字 - 例如。
&some string&
一个网址 - 例如。
&some string&specific url&
对于不同于字符串的 URL
等等
我可以想到两种方法来处理字符串以找出特殊的标记序列:
一个。我可以以字符为中心的方式进行,即解析字符串以查找序列 1,然后是 2 等。但这似乎效率低下,因为它必须多次解析字符串。
湾。最好逐个字符地处理字符串并记住特殊字符及其位置。如果内存与上述特殊序列匹配,则字符串中的特殊字符将替换为 HTML。但是,我不确定这是否是一个更好的主意,也不确定应该如何实现它。
解决此问题的最佳方法是什么?正则表达式怎么样?它遵循模式a还是b?有第三种选择吗?
PS我正在使用Python。Python 示例最受赞赏。