You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

正则表达式按账户类型提取内容:修复SERVICE账户捕获异常

正则表达式修复方案

针对你遇到的服务账户拆分问题,核心思路是优先匹配服务账户模式,避免其进入人类账户的拆分逻辑。以下是修复后的正则及详细说明:

修复后的正则表达式

^(?:(-?)(admin|top)-|ADMIN: )?(?:
  (?<FirstName>(?:-?(?:service|svc)[-.].+|SERVICE: .+|.*ServiceAccount.*))|
  (?:
    (?<FirstName>[^\n ]+)(?: (?<MiddleName>\w+))? (?<LastName>[A-Z])[^\n]*|
    (?<FirstName>[^\n]+)
  )
)$

规则说明

  1. 前缀匹配:处理可选的管理员前缀,包括 -admin-、admin-、ADMIN: 、-top-、top-。
  2. 服务账户分支:优先匹配以下服务账户特征,将完整内容直接存入FirstName:
    • 带/不带 - 前缀的 service/svc 开头,后跟 - 或 . 及任意内容(如 -service-something、svc.something)
    • SERVICE: 开头的字符串(如 SERVICE: Something)
    • 包含 ServiceAccount 的字符串(如 someServiceAccount)
  3. 人类账户分支:非服务账户按两种情况处理:
    • 含空格的姓名:捕获第一个空格前的内容为FirstName,可选中间名,提取姓氏首字母存入LastName
    • 无空格的姓名:直接将全部内容存入FirstName

示例验证结果

账户名称FirstNameLastNameMiddleName
-admin-JohnSJohnS无无
admin-JohnSJohnS无无
ADMIN: John SmithJohnS无
-top-JohnSJohnS无无
top-JohnSJohnS无无
John SmithJohnS无
John Peter SmithJohnSPeter
-service-something-service-something无无
service-somethingservice-something无无
-svc-something-svc-something无无
svc-somethingsvc-something无无
svc.somethingsvc.something无无
SERVICE: SomethingSERVICE: Something无无
someServiceAccountsomeServiceAccount无无

内容的提问来源于stack exchange,提问作者K str

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 05:31:20