Python - если в тексте есть «полное» слово, распечатать не нужно - PullRequest
0 голосов
/ 18 ноября 2018

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

Проблема в том, что я позволю себе сказать, что у меня есть слово "lo" - и мой текст = "Привет, ребята, меня зовут Stackoverflow" - он распечатает весь текст, в котором есть lo текст, который находится внутри "hello" и "stackoverflow"

мой вопрос: как мне сделать, когда я хочу найти слово, такое как "lo", оно должно восприниматься как слово, а не распечатываться, если оно и т.д. содержится внутри слова, такого как "привет" или "stackoverflow"? "- Распечатывать, только если в нем есть слово" lo "?

keywords = ["Lo"]
for text in keywords:
   if text in text_roman():
      print("Yay found word")

Ответы [ 4 ]

0 голосов
/ 18 ноября 2018

Самый простой способ - использовать регулярное выражение. Вы можете поиграть с регулярными выражениями здесь и выяснить, как реализовать их в python здесь .

import re

target_strings = ["lo", "stack", "hell", "cow", "hello", "overf"]

for target in target_strings:
  re_target = re.compile(r"\b({})\b".format(target), flags=re.IGNORECASE)
  if re.search(re_target, "Hello stack overflow lo"):
    print(target)

>>> lo
>>> stack
>>> hello
0 голосов
/ 18 ноября 2018

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

For word in s.split():
  If q in word:
    Print word
0 голосов
/ 18 ноября 2018

Вы могли бы сделать это, но есть как ... 400 крайних случаев, которые сделают это проблемой.

text = "This is my text"
keywords = ["Lo"]
if len(set(text.split()).intersection(set(keywords))) > 0:
    print("Yes")
0 голосов
/ 18 ноября 2018

используйте string.find(). Он возвращает индекс искомой подстроки и -1, если не найден. Таким образом, вы можете применить оператор if, чтобы проверить, является ли он подстрокой.

s='Hello there Stack!'
if (s.find('llo')!=-1):
    print('String found')

Надеюсь, это помогло!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...