spaCy 中的匹配模式 returns 一个空结果
Matching patterns in spaCy returns a empty result
我希望通过这个简单的代码找到一些模式。但结果是空的。
我忘记了什么?
for tk in doc[:30]:
print (tk.text, ':', tk.pos_)
方法:名词
来自:ADP
评估模拟:名词
计算:ADJ
根据:ADP
程序:名词
呈现:动词
在:ADP
: SPACE
建筑:PROPN
阳离子:名词
在:ADP
阶段:名词
来自:ADP
projectA: 名词
评级:名词
必须:动词
是:辅助
制作:动词
至:ADP
一个:数字
日:名词
典型的:ADJ
来自:ADP
项目:名词
来自:ADP
夏天:名词
e:CCONJ
来自:ADP
pattern = [
{'POS': 'NOUN'},
{'LOWER': 'ADP'},
]
#Matcher class object
matcher = Matcher(nlp.vocab)
matcher.add("matching_1", patterns = [pattern])
result = matcher(doc, as_spans=True)
print(result)
[]
所以我期待 POS 标签 'NOUN' + 'ADP' 的模式可以找到单词:
'Método de',
'cações em',
'fase de',
'projeto de'.
以下规则将匹配小写时等于“ADP”的标记。这将不匹配任何内容,因为“ADP”不是小写字母。
{'LOWER': 'ADP'},
我不确定这应该匹配什么,也许您想用 POS = ADP 匹配小写单词?在那种情况下,您需要这样的规则:
{"POS": "ADP", "REGEX": "^[a-z]+$"}
重申我上面所说的:{'LOWER': 'ADP'}
不 将小写单词与 ADP 词性匹配。您似乎对“较低”的含义或规则的运作方式感到困惑。
我举个例子。 {"LOWER": "dog"}
将匹配“Dog”、“DOG”或“dog”等字词。它不会匹配词性为“dog”(不存在)的单词。 "LOWER": value
的意思是,“匹配小写时看起来像 value
的单词”。
如果你想匹配具有 ADP 词性的小写单词,你应该使用我上面写的带有 REGEX
位的规则。
我希望通过这个简单的代码找到一些模式。但结果是空的。 我忘记了什么?
for tk in doc[:30]:
print (tk.text, ':', tk.pos_)
方法:名词 来自:ADP 评估模拟:名词 计算:ADJ 根据:ADP 程序:名词 呈现:动词 在:ADP : SPACE 建筑:PROPN 阳离子:名词 在:ADP 阶段:名词 来自:ADP projectA: 名词 评级:名词 必须:动词 是:辅助 制作:动词 至:ADP 一个:数字 日:名词 典型的:ADJ 来自:ADP 项目:名词 来自:ADP 夏天:名词 e:CCONJ 来自:ADP
pattern = [
{'POS': 'NOUN'},
{'LOWER': 'ADP'},
]
#Matcher class object
matcher = Matcher(nlp.vocab)
matcher.add("matching_1", patterns = [pattern])
result = matcher(doc, as_spans=True)
print(result)
[]
所以我期待 POS 标签 'NOUN' + 'ADP' 的模式可以找到单词: 'Método de', 'cações em', 'fase de', 'projeto de'.
以下规则将匹配小写时等于“ADP”的标记。这将不匹配任何内容,因为“ADP”不是小写字母。
{'LOWER': 'ADP'},
我不确定这应该匹配什么,也许您想用 POS = ADP 匹配小写单词?在那种情况下,您需要这样的规则:
{"POS": "ADP", "REGEX": "^[a-z]+$"}
重申我上面所说的:{'LOWER': 'ADP'}
不 将小写单词与 ADP 词性匹配。您似乎对“较低”的含义或规则的运作方式感到困惑。
我举个例子。 {"LOWER": "dog"}
将匹配“Dog”、“DOG”或“dog”等字词。它不会匹配词性为“dog”(不存在)的单词。 "LOWER": value
的意思是,“匹配小写时看起来像 value
的单词”。
如果你想匹配具有 ADP 词性的小写单词,你应该使用我上面写的带有 REGEX
位的规则。