Python Spacy_ALPHA匹配器模式不工作吗?

Python Spacy_ALPHA匹配器模式不工作吗?,python,nlp,spacy,Python,Nlp,Spacy,关于以下设置: 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('

关于以下设置:

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

不幸的是,您在matcher中遇到了一个错误。运算符没有正确实现

发生的情况是可变长度运算符“*”正在匹配结束标记“house”,从而阻止“house”永远匹配

每当您有一个可变长度操作符与模式的下一部分重叠时,就会发生错误


如果你有时间和意愿,我希望在这个拉请求,但无可否认,匹配代码是非常困难的。它可能应该完全重新实现。

有解决办法吗?类似于“除了名词以外的任何东西”。我很想帮忙,但我想我的编码技能太低了