Может кто-нибудь объяснить мне, что означает весь код в этих скобках: RegexpTokenizer (r '\ w + | $ [0-9] + | \ S +')? - PullRequest
0 голосов
/ 30 июня 2019

Я недавно читал книгу о НЛП, и в одной части автор показывает мне, как пометить фрагмент текста.

А потом он показывает мне этот код:

sent0 = """Thomas Jefferson began building Monticello at the age of 26."""
tokenizer = RegexpTokenizer(r'\w+|$[0-9]+|\S+')
print(tokenizer.tokenize(sent0))

Что я не понимаю, так это значение этого слова "r '\ w + | $ [0-9] + | \ S +«».Может кто-нибудь объяснить мне только это?

Ответы [ 2 ]

0 голосов
/ 30 июня 2019

Вот отличный инструмент для интерпретации RegEx: https://regex101.com/r/fLntOd/1

Мой ответ прямо взят из этой страницы.Этот инструмент - отличная площадка для изменения вашего регулярного выражения, чтобы увидеть, как он ведет себя по-разному в реальном времени.

r '\ w + | $ [0-9] + | \ S +'

\ w + соответствует любому символу слова (равен [a-zA-Z0-9 _])

+ Квантор - соответствует от одного до неограниченного времени,столько раз, сколько возможно, возвращая по мере необходимости

$ утверждает позицию в конце строки

Соответствует одному символу, присутствующему в списке ниже [0-9] +

+ Квантор - сопоставляет от одного до неограниченного количества раз, сколько возможно, возвращая при необходимости (жадный) 0-9 одного символа вдиапазон от 0 (индекс 48) до 9 (индекс 57) (с учетом регистра)

\ S + соответствует любому непробельному символу (равен [^ \ r \ n \ t \f \ v]) + Квантификатор - Сопоставляет от одного до неограниченного количества раз, столько раз, сколько возможно, возвращая при необходимости (жадный)

буквально «соответствует символу»(чувствительно к регистру)

Глобальные флаги шаблонов g модификатор: global.Все совпадения (не возвращаются после первого совпадения) Модификатор m: многострочный.Заставляет ^ и $ совпадать с началом / концом каждой строки (не только с началом / концом строки)

0 голосов
/ 30 июня 2019

Попробуйте посмотреть здесь, чтобы получить больше информации о регулярных выражениях: https://docs.python.org/fr/2/howto/regex.html

...