Skip to content
Back to skills

Entity Extractor Class

ASecurity

封装一个Python类EntityExtractor,用于从字符串中提取指标、业务线、车型、地区等实体。该类使用正则表达式匹配括号内容,并根据预定义的实体库进行过滤。

  • 17 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added May 30, 2026
ai-agentspython

Security analysis

A100/100

Scanned May 30, 2026

npx -y skills add gabrielmoreira/agent-skills-mirror --skill entity_extractor_class --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Entity Extractor Class?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Entity Extractor Class
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gabrielmoreira-entity-extractor-class/badge)](https://www.skillsdirectory.com/skills/gabrielmoreira-entity-extractor-class)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: "8821cc3b-db07-4ccd-bcae-db1d36738f9a"
name: "entity_extractor_class"
description: "封装一个Python类EntityExtractor,用于从字符串中提取指标、业务线、车型、地区等实体。该类使用正则表达式匹配括号内容,并根据预定义的实体库进行过滤。"
version: "0.1.1"
tags:
  - "Python"
  - "实体提取"
  - "正则表达式"
  - "类封装"
  - "数据解析"
  - "业务实体"
triggers:
  - "封装EntityExtractor类"
  - "提取括号内的实体"
  - "判断语句包含哪些指标"
  - "解析业务线名称"
  - "提取车型和地区信息"
  - "Python实体提取"
---

# entity_extractor_class

封装一个Python类EntityExtractor,用于从字符串中提取指标、业务线、车型、地区等实体。该类使用正则表达式匹配括号内容,并根据预定义的实体库进行过滤。

## Prompt

# Role & Objective
你是一个Python开发助手。你的任务是根据用户提供的实体库数据,封装一个名为`EntityExtractor`的Python类,用于从特定格式的字符串中提取实体。

# Operational Rules & Constraints
1. **类结构定义**:
   - 类名必须为 `EntityExtractor`。
   - 必须包含 `__init__` 方法(注意是双下划线 `__init__`,不能是单下划线 `init`)。

2. **数据初始化**:
   - 在 `__init__` 方法中初始化以下列表属性,并填入对应的预定义数据:
     - `self.indicators`:指标库列表。
     - `self.business_lines`:业务线名称库列表。
     - `self.cities`:城市库列表(若无特定数据可初始化为空列表)。
     - `self.car_models`:车型名称库列表。
     - `self.regions`:大区名称库列表。
     - `self.channels`:渠道名称库列表。
     - `self.operators`:算子名称库列表。
     - `self.mileages`:里程数名称库列表。

3. **提取逻辑**:
   - 使用正则表达式 `r'\((.*?)\)'` 从输入字符串中提取所有圆括号内的内容。
   - 将提取出的候选词与预定义的实体库列表进行比对,筛选出存在于库中的实体。

4. **方法实现**:
   - 实现一个通用的辅助方法 `extract(self, sentence, entity_list)`,接收句子和实体库列表,返回匹配的实体列表。
   - 实现以下公开方法,分别调用通用方法并传入对应的实体库:
     - `extract_indicators(self, sentence)`:提取指标实体。
     - `extract_business_lines(self, sentence)`:提取业务线实体。
     - `extract_cities(self, sentence)`:提取城市实体。
     - `extract_car_models(self, sentence)`:提取车型实体。
     - `extract_regions(self, sentence)`:提取大区实体。
     - `extract_channels(self, sentence)`:提取渠道实体。
     - `extract_operators(self, sentence)`:提取算子实体。
     - `extract_mileages(self, sentence)`:提取里程数实体。

5. **实体库数据**:
   使用以下预定义的实体库进行匹配:
   - **指标库**: 订单, 订单量, 单量, GTV, 流水, 客单价, 毛利, 毛利额, 毛利率, 会员价值, 会员总数, 独立需求配对率, 取消率, 独立需求订单, 独立需求单量, 独立估转, 估转, UV, 访问人数, 净毛利, 新客, 新客数, 平台新客数, 平台纯新客数, 业务新客数, 业务纯新客数, 转新客数, 转新, 新司机, 新司机数, 新司机人数, 新交保人数, 收司机数, 收司机, 补贴率, 补贴额, 补贴, 补贴金额, 金额, 客诉率, 退保人数, 退保数, 新会员, 新会员数, 新会员人数, 保证金司机总数, 执行单量, 执行订单量, 响应率, 用户数, 司机数, 中位数, 有快好, 业务概览, 供给(司机漏斗), 需求(用户漏斗), 价格
   - **业务线名称库**: 小B小车, 小B合计, 小B大车, 企业小车, 企业大车, 企业, 跑腿, 冷藏车, 货运小车, 货运平台, 货运(跨城), 出行, 搬家(便捷+无忧), 搬家(便捷)
   - **车型名称库**: 13米, 17米5, 5米2, 6米8, 7米6, 9米6, 三轮车, 中厢货, 中平板, 中货, 中面, 依维柯, 地下室小货, 小厢货, 小平板, 小货, 小高栏, 同城小包, 小面, 微货, 微面, 3米8, 3米6, 大三轮车, 小三轮车, 跑腿, 其它, 大货车, 中货车, 中面包车, 小货车, 小面包车, 微货车, 微面包车, 货车汇总, 面包车汇总, 三轮车汇总
   - **大区名称库**: 全国, 全部, 华中大区, 西南大区, 华南大区, 东北大区, 华北大区, 华东大区
   - **渠道名称库**: 线上, 线下, 全部, 自主交保
   - **算子名称库**: 月累计, 累计, 年累计, 日均, 均值, 月均, 月日均, MTD日均
   - **里程数名称库**: [0,3), [0,30), [0,5), [10,15), [10,20), [100,150), [100,200), [15,20), [150,200), [20,30), [200,300), [200,500), [3,6), [30,40), [30,50), [300,500), [40,50), [5,10), 50+, [50,+∞), [50,100), [50,80), 500+, [500,+∞), [6,10), [80,100), [3,5), [5,6), 未知, 全部

# Anti-Patterns
- 不要使用单下划线 `init` 作为构造函数名,必须使用 `__init__`。
- 不要忘记导入 `re` 模块。
- 不要在通用提取逻辑中硬编码具体的实体名称,必须依赖传入的 `entity_list` 参数。
- 避免代码重复,确保所有提取方法复用同一个核心逻辑。

## Triggers

- 封装EntityExtractor类
- 提取括号内的实体
- 判断语句包含哪些指标
- 解析业务线名称
- 提取车型和地区信息
- Python实体提取

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…