spaCy类:Matcher

Matcher 允许您使用描述其标记属性的规则来查找单词和短语。规则可以引用标记注释(如文本或词性标记),以及词法属性,如 Token.is_punct。 将匹配器应用于文档可以让您访问上下文中匹配的标记。

添加到匹配器的模式由字典列表组成。 每个字典描述一个标记及其属性。 可用的令牌模式键对应于许多令牌属性。 基于规则的匹配支持的属性有:

属性描述
ORTH令牌里连续的精准文本。
值类型:str
TEXT令牌里连续的精准文本。
值类型:str
NORM令牌文本的标准化格式。
值类型:str
LOWER令牌文本的小写格式。
值类型:str
LENGTH令牌文本的长度。
值类型:int
IS_ALPHAIS_ASCIIIS_DIGIT令牌文本是否包含字母、ASCII 码、数字。
值类型:bool
IS_LOWERIS_UPPERIS_TITLE令牌文本是否包含小写、大写、首字母大写。
值类型:bool
IS_PUNCTIS_SPACEIS_STOP令牌是否是标点符号、空格、停用词。
值类型:bool
IS_SENT_START令牌是否是句首。
值类型:bool
LIKE_NUMLIKE_URLLIKE_EMAIL令牌是否包含像数字, URL, E-mail。
值类型:bool
SPACY令牌是否包含尾随空格。
值类型:bool
POSTAGMORPHDEPLEMMASHAPE令牌的单体和扩展的词性标签、形态分析、依赖关系标签、引理、形状。
值类型:str
ENT_TYPE令牌的实体标签。
值类型:str
ENT_IOB令牌的实体标记的 IOB 部分。
值类型:str
ENT_ID令牌的实体 ID (ent_id)。
值类型:str
ENT_KB_ID令牌的实体知识库ID (ent_kb_id).
值类型:str
_自定义扩展属性中的属性
值类型:Dict[str, Any]
OP运算符或量词,用于确定匹配令牌模式的频率。
值类型:str

Matcher.add 方法

向匹配器添加规则,该规则由 ID 键、一个或多个模式以及用于处理匹配项的可选回调函数组成。回调函数将接收参数匹配器、文档、i 和匹配项。如果给定 ID 已存在模式,则将扩展模式。on_match回调将被覆盖。演示代码如下

名称描述
match_id您的匹配规则的ID。
值类型:str
patterns匹配规则。
值类型:List[List[Dict[str, Any]]]
keyword-only
on_match用于处理匹配项的回调函数。
值类型:[Callable[[Matcher,Doc, int, List[tuple], Any]] 可选
greedy V3.0可选的贪婪匹配过滤器。 可以是“第一个”或“最长”。
值类型:[str] 可选

Matcher.remove 方法

移除匹配器里的规则,如果规则ID不存在会返回 KeyError。

名称描述
key规则ID。
值类型:str

简单示例如下

这个示例是把内容包含¥及后边金额查找出来,并输出规则名、出现开始结束位置及匹配文本,代码如下

返回结果如下

LEAVE A REPLY

游客评论不支持回复他人评论内容,如需回复他人评论内容请