gpt4 book ai didi

python - 从字符串中去除 BBCode

转载 作者:行者123 更新时间:2023-12-01 04:34:49 27 4
gpt4 key购买 nike

我正在尝试找到一种从字符串中删除 BBCode 的方法。我发现的模块(BBCode 和 Post Markup)似乎只将它们转换为 HTML,而不是仅仅删除 BBCode 并返回一个干净的字符串。如果我遗漏了一些东西,而其中一个实际上满足了我的要求,我希望得到一些指导:)

否则,有什么方法可以从字符串中剥离 BB 代码并返回纯文本吗?

最佳答案

你的答案实际上在bbcode内模块。不幸的是,相关的方法并没有在documentation中,但如果您搜索代码,就会发现:Parser.strip()。例如:

import bbcode

parser = bbcode.Parser()
code = "[code]a = [1, 2, 3, 4, 5][/code]"
plain_txt = parser.strip(code)
print(plain_txt)
'a = [1, 2, 3, 4, 5]'

不幸的是,Robᵩ 都基于正则表达式 answerpostmarkup遭受同样的问题 - 无法区分 BBCode ([list][*]Item 1[*]Item 2[/list], [color=red]我讨厌颜色-盲人![/color]等)和我上面使用的嵌入代码示例(它们都返回a =),或者像

这样的行
I'm feeling sad :[ But, eating ice cream cheers me up! :]

它只是返回

I'm feeling sad :

这是可能的,因为 bbcode 首先对字符串进行标记,搜索有效的 BBCode 标记,并将其余部分识别为整个文本的一部分。 Parser.strip() 然后只是丢弃 BBCode 标记并重新组装文本,而格式化方法将这些标记转换为 XHTML 标记,并在适当的情况下拼接其余部分。

关于python - 从字符串中去除 BBCode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31900941/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com