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

基于Java正则的EPLAN字符串匹配需求:处理/分隔子串输出指定内容

适配EPLAN(Java 6正则)的字符串处理方案

需求说明

  • 处理格式为text1/text2的字符串,允许字符:字母、数字、_、-
  • 规则1:若text1与text2内容相同,输出空内容
  • 规则2:若text1与text2内容不同,仅输出text2

已尝试正则及问题

  • ((\w+)(?=\/\2)):逻辑与需求相反,但可在EPLAN中运行
  • ^([^\/]+)\/(?:\1$\r?\n?)?:逻辑符合需求,但无法在EPLAN中运行

解决方案

针对Java 6正则规则,可使用以下正则表达式配合替换操作实现需求:

正则查找表达式

^([\w-]+)/(\1)$|^[\w-]+/([\w-]+)$

替换表达式

$3

原理说明

  • 第一个分支^([\w-]+)/(\1)$匹配text1与text2相同的字符串,此时捕获组$3为空,替换后输出空内容
  • 第二个分支^[\w-]+/([\w-]+)$匹配text1与text2不同的字符串,此时捕获组$3对应text2,替换后仅输出text2
  • 使用[\w-]代替\w,确保包含-字符的匹配(\w仅包含字母、数字、_)

也可分两步完成操作:

  1. 先匹配相同内容的字符串并替换为空:
    • 查找:^([\w-]+)/\1$
    • 替换:空
  2. 再匹配剩余字符串并提取text2:
    • 查找:^[\w-]+/([\w-]+)$
    • 替换:$1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 23:05:03