LINUX.ORG.RU

Python поиск по регулярным выражениям

 


0

1

Всем привет, нужно искать совпадение и если true то записывать в файл. Делаю так:

complaints = ['find', 'found']

for array in complaints:
                if comment['text'] == array:
                        f1 = open("/root/slot.txt", 'a')
                        f1.write(comment['text'] +"\n")

Но это работает только когда в comment['text'] находится только слово find или found, когда будет например - «i cant found» оно не срабатывает, подскажите как исправить, буду очень благодарен

if comment['text'] == array:

Это бред.(строка никогда не будет == подстроке, кроме случая полного их совпадения)

---------------------

if array in comment['text']:

dimderbin
()
In [5]: re.findall("find|found", "I cant find")
Out[5]: ['find']
...
In [10]: re.findall("find|found", "I found her")
Out[10]: ['found']

С модулём re так просто разобраться, читай доки и туториалы.

true_admin ★★★★★
()
Ответ на: комментарий от dimderbin

никогда не будет == подстроке
никогда

Это ты бред сказал, строка - это частный случай подстроки, как раз таки может.

In [1]: ('str' == 'str') == True
Out[1]: True

In [2]: ('str' in 'str') == True
Out[2]: True

z00ke
()
Ответ на: комментарий от z00ke

Твой код соответствует моему высказыванию.

строка никогда не будет == подстроке, кроме случая полного их совпадения

In [1]: ('str' == 'str') == True

dimderbin
()
Ответ на: комментарий от dimderbin

Ладно, я просто проверял твою внимательность. ))0

z00ke
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.