2013-02-17 2 views
0

Я пытаюсь добавить список (null) с «предложениями», которые имеют # (Hashtags) из другого списка. В настоящее время мой код дает мне новый список с длиной общего количества элементов, участвующих в списке, а не отдельных предложений.Добавить список с рег. выражение

фрагмент кода приведен ниже

import re 

old_list = ["I love #stackoverflow because #people are very #helpful!","But I dont #love hastags", 
"So #what can you do","Some simple senetnece","where there is no hastags","however #one can be good"] 

new_list = [ ] 


for tt in range(0,len(s)): 
    for ui in s: 
     if bool(re.search(r"#(\w+)",s[tt])) == True : 
      njio.append(s[tt]) 

Пожалуйста, дайте мне знать, как добавить только одно предложение.

ответ

2

Я не уверен, что вы хотели для вывода, но это будет сохранить исходное предложение вместе с его соответствием набором хэштег:

>>> import re 
>>> old_list = ["I love #stackoverflow because #people are very #helpful!","But I dont #love hastags", 
... "So #what can you do","Some simple senetnece","where there is no hastags","however #one can be good"] 
>>> hash_regex = re.compile('#(\w+)') 
>>> [(hash_regex.findall(l), l) for l in old_list] 
[(['stackoverflow', 'people', 'helpful'], 'I love #stackoverflow because #people are very #helpful!'), (['love'], 'But I dont #love hastags'), (['what'], 'So #what can you do'), ([], 'Some simple senetnece'), ([], 'where there is no hastags'), (['one'], 'however #one can be good')] 
+0

@sberry ... как закрыть этот вопрос. – LonelySoul

+0

Просто нажмите на галочку рядом с моим ответом слева. – sberry

Смежные вопросы