gpt4 book ai didi

Python SpaCy Regex 不提取包含单词的标记

转载 作者:行者123 更新时间:2023-11-28 22:10:01 24 4
gpt4 key购买 nike

我在简单代码下面运行以获取包含该词的所有标记(例如,包含 acompared、notcompared、thiscompared 的词)。

但是,spaCy 正则表达式不返回任何内容。 python re上的正则表达式词fine。

如果这是一个 spaCy 问题或者如何解决这个问题,你能告诉我吗?

它返回 [],空列表。

import plac
from spacy.lang.en import English
from spacy.matcher import PhraseMatcher, Matcher
from spacy.tokens import Doc, Span, Token
import spacy

nlp = spacy.load("en_core_web_sm")

text = """
"Net income was $9.4 million acompared to the prior year of $2.7
million.",
"Revenue exceeded twelve billion dollars, with a loss of $1b. run",
"""

doc = nlp(text)

pattern = [{"LOWER": {"REGEX": "\b\wcompared\w\b"}}]

matcher = Matcher(nlp.vocab)
matcher.add("item", None, pattern )
matches = matcher(doc)
print(matches)
print(matcher)

此代码应返回“acompared”标记的位置。

最佳答案

我什至没有看到这个正则表达式与 python re 一起工作,因为它试图匹配 word followed by compared followed by word (surrounded by word boundaries) 你的文本中没有任何内容与以下模式匹配

\b\wcompared\w\b

enter image description here

您只需将正则表达式更改为

\b(a|this|not)compared\b

enter image description here

Demo

关于Python SpaCy Regex 不提取包含单词的标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57015721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com