heyy那里
我想解析一个文本,让它命名为'post',如果它们包含一个特定字符,则在某个位置'urlize'一些字符串。
我的'伪代码'试用看起来像那样:
def urlize(post)
for string in post
if string icontains ('#')
url=(r'^searchn/$',
searchn,
name='news_searchn'),
then apply url to the string
return urlize(post)
我希望函数在必要时(就像twitter一样)将带有urlized字符串的帖子返回给我。
我不明白:我如何解析文本,并搜索某些字符串? 是否可以制作一个功能,特别是'urlizing'一些字符串?该函数应该返回整个帖子,无论它是否有这种字符串。 还有Django提供的另一种方式吗? 谢谢
答案 0 :(得分:4)
首先,我猜你在模板中大多需要这个功能(你想要发布帖子“urlized”)。
内置template tag urlize,用作
{{ value|urlize }}
获取字符串值并使用链接返回。
如果您想自定义逻辑,可以create your own template tag。
修改强>
要查找#个单词,您可以使用简单的正则表达式搜索:
import re
a = "hello #world. foo #bar! #foo_bar"
re.findall("#(\w+)",a)
>> ['world', 'bar', 'foo_bar']