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

如何编写正则表达式提取单值或竖线分隔组的首个值?

提取竖线分隔字符串的首个值或完整单值的正则表达式

直接用这个正则就能搞定:^[^|]+

正则说明

  • ^:锚定到字符串的起始位置,保证从最开头开始匹配
  • [^|]+:匹配任意数量(至少1个)非竖线|的字符——如果是单个无竖线的值,就会匹配整个字符串;如果是竖线分隔的多值组,就会匹配第一个竖线之前的所有内容,正好是你要的首个值

匹配示例

原有输入(每行一个字符串):

12345667D23
3t23456
ab57890
3t23456|ab57890
12345667D23|3t23456|ab57890

提取结果:

12345667D23
3t23456
ab57890
3t23456
12345667D23

实际使用小提示

如果用代码提取(比如Python),直接匹配每行结果即可:

import re

lines = [
    "12345667D23",
    "3t23456",
    "ab57890",
    "3t23456|ab57890",
    "12345667D23|3t23456|ab57890"
]

for line in lines:
    match = re.match(r'^[^|]+', line)
    if match:
        print(match.group())

如果在文本编辑器里批量处理(只保留每行首个值),也可以用查找规则^(.*?)\|.*,替换为$1实现同样效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 10:04:55