поиск подстроки в строке не возвращает истину python - PullRequest
0 голосов
/ 12 июля 2020

У меня есть эти теги, которые я возвращаю из инструмента для очистки веб-страниц как часть создаваемого мной приложения CLI. Я пытаюсь проверить, содержит ли подстрока тега строку из моего списка слов. Я попытался вручную преобразовать оба значения в строки, но по какой-то причине ничего не происходит, и подстрока никогда не встречается в строке

Я пробовал использовать метод ниже и оператор 'in', но не имел какой-либо успех

вот метод, который я использую

for tag in inputs:
        for line in input_wordlist:
            print(tag,line)
            if tag.find(str(line)): # check here if the substring is in the string

                print('YES THIS MATCHES')
                vulns.append(line) #add the vulnerability to the list

вот пример двух значений, которые я сравниваю слева: тег как строка справа: строка из список слов, который я использую как подстроку

<input id="q-universal-search" type="hidden" value=""/>     hidden

Ответы [ 2 ]

0 голосов
/ 12 июля 2020

Глядя на ваш вывод print(tag,line):

<input id="q-universal-search" type="hidden" value=""/>     hidden

Кажется, что переменная line имеет некоторые пробелы, которые необходимо обрезать.

Попробуйте if line.strip() in tag: или if line.rstrip() in tag: чтобы получить совпадение.

0 голосов
/ 12 июля 2020

Вы должны использовать if substring in line форму if. Вот так

for tag in inputs:
    for line in input_wordlist:
        print(tag,line)
        if line in tag: # check here if the substring is in the string

            print('YES THIS MATCHES')
            vulns.append(line) #add the vulnerability to the list
...