2017-07-31 77 views
2

我想分析從具有#hashtag用戶輸入一個字符串,與其他詞太如何從用戶帖子/字符串中提取hashtag?

只是Facebook和Twitter的方式一起打印出來的結果處理吧:)

例如: 用戶帖子

「你好#word,正在學習#python和#django今天」!

我要出去放是: 地獄o #word,今天正在學習#python#django

這是多遠我已經走了:

@login_required 
@ajax_required 
def post(request): 
    last_feed = request.POST.get('last_feed') 

    user = request.user 
    csrf_token = (csrf(request)['csrf_token']) 
    feed = Feed() 
    feed.user = user 
    post = request.POST['post'] 

    lookup_hash_tag = post.strip() 
    hstg=re.compile(r"#(\w+)") 
    #print pat.findall(s) 

    for hashtag in hstg.findall(lookup_hash_tag): 

     post = "<span><a href='/hastag/?q={}'>{}</a> </span> {}".format(hashtag, hashtag, post.replace('#', '#')) 




    if len(post) > 0: 
     feed.post = post[:255] 
     feed.save() 
    html = _html_feeds(last_feed, user, csrf_token) 
    return HttpResponse(html) 
+1

你需要對你的問題非常具體,否則你會繼續下臺。 – 16num

+0

嘗試創建自定義過濾器,https://stackoverflow.com/a/2507447/3762142和https://djangosnippets.org/snippets/2072/這是您的出發點 –

回答

2

我對你的問題沒有真正想法,但我錯了看到幾件事情:

  • 取而代之的for循環在比賽這可以使用:re.sub(r'#([\w]+)', r"<span><a href='/hastag/?q=\g<1>'>#\g<1></a> </span>", a)
  • 變量post每次都會在for循環中被覆蓋。
  • 什麼是飼料?
  • 很多額外的複雜性(post.replace('#', '#')什麼都不做,周圍具有可變括號什麼都不做,等)
  • 如果飼料是一種模式,爲什麼不使post場大?如果你在255點剪切,你可能會丟失數據(或者在一個鏈接的中間切入)

請提供更多信息,否則我們只是在猜測。

+0

這不提供問題的答案。要批評或要求作者澄清,請在其帖子下方留言。 - [來自評論](/ review/low-quality-posts/16886970) – kdopen

+0

如果你不明白這個問題,你爲什麼回答?您應該評論要求澄清和/或將問題標記爲不清楚。 – EJoshuaS

相關問題