Извлечение имени из необработанного текста с использованием Python - PullRequest
0 голосов
/ 30 октября 2019

"Имя информатора: NK Sangle, PC B.No. 1775 Branch Control Traffic Branch, Ahmednagar" У меня есть этот необработанный текст, как я могу извлечь имя человека, используя NLTK. Пожалуйста, помогите.

Ответы [ 2 ]

2 голосов
/ 30 октября 2019
import re

rc = re.compile(r":([a-zA-Z\.\s]*)")

Value = "Name of the informant : N. K. Sangle, PC B.No. 1775 Traffic Control Branch, Ahmednagar"

print (rc.search(Value)[1])

out Положите: NK Sangle

1 голос
/ 30 октября 2019

Если вы не хотите импортировать такую ​​библиотеку, как regex, вы можете использовать встроенные строковые методы:

>>> sentence = "Name of the informant : N. K. Sangle, PC B.No. 1775 Traffic Control Branch, Ahmednagar"
>>> name = sentence.split(':')[1].split(',')[0][1:]
>>> print(name)
'N. K. Sangle'

При этом используется str.split(), который принимает строку иразбивает его на список. Затем он использует индексирование списка (с помощью [] для извлечения соответствующего элемента в списке.

Вот как я его создал.

>>> sentence = "Name of the informant : N. K. Sangle, PC B.No. 1775 Traffic Control Branch, Ahmednagar"
'Name of the informant : N. K. Sangle, PC B.No. 1775 Traffic Control Branch, Ahmednagar'

>>> sentence.split(':')
['Name of the informant ',' N. K. Sangle, PC B.No. 1775 Traffic Control Brance, Ahmednagar']

>>> sentence.split(':')[1]
' N. K. Sangle, PC B.No. 1775 Traffic Control Brance, Ahmednagar'

>>> sentence.split(':')[1].split(',')
[' N. K. Sangle', ' PC B.No. 1775 Traffic Control Branch', ' Ahmednagar']

>>> sentence.split(':').split(',')[0]
' N. K. Sangle'

>>> sentence.split(':').split(',')[0][1:]
'N. K. Sangle'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...