2013-08-28 71 views
1

我想查找推文中的所有hashtags。下面的代碼找到了#標籤,但是在打印出來時,每個字母都會被寫出來,而不是實際的標籤。hashtags的正則表達式打印出每個字母

問題是我想創建所發現的標籤的鏈接,這是不可能的,因爲它應該爲標籤中的每個字母創建鏈接。

我在做什麼錯?

tag_regex = re.compile(r""" 
     [/^#\S+$/] 
     """, re.VERBOSE) 

for tag in tag_regex.findall(tweet): 
    print tag 

結果:

# 
h 
a 
s 
h 
t 
a 
g 
1 
# 
h 
a 
s 
h 
t 
a 
g 
2 
+0

你不應該鍵入的正則表達式了像它與/正則表達式/ – pythonian29033

回答

3

的支架構造character class你不想要的。此外,您不希望使用正則表達式分隔符/.../以不使用它們的語言(一個簡單的字符串就足夠了,最好是一個原始字符串,因此您不需要轉義反斜槓)。

tag_regex = re.compile(r"#\S+") 
+0

偉大的東西的JavaScript,非常感謝:最後,如果你想找到輸入字符串的子串,你不應該使用anchors ! – holyredbeard