Относительно следующей настройки:
import spacy
from spacy.matcher import Matcher
from spacy.attrs import POS, LOWER, IS_ALPHA
nlp_en = spacy.load('en')
text = nlp_en('A nice looking great blue house you have!')
matcher = Matcher(text.vocab)
OP = 'OP'
matcher.add_entity('test')
matcher.add_pattern('test', [
{LOWER: 'nice'},
{OP: '*', IS_ALPHA: True},
{LOWER: 'house'}
])
matches = matcher(text)
В этом случае я пытаюсь найти любое слово между nice
и house
, но сопоставление не даст никакого результата. Также я попытался перевернуть {OP: '*', IS_ALPHA: True}
на {IS_ALPHA: True, OP: '*'}
, но безрезультатно. Что не так с этим шаблоном?
Версия Spacy: 1.9.0