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

正则表达式问题:提取MyText.后非;或空格结尾的内容

修正正则表达式以匹配预期内容

我来帮你搞定这个正则问题!你之前用的MyText.(.*(?=\;))之所以会匹配到MyText.abc + "ss",核心问题在于.*是贪婪匹配——它会尽可能多地抓取字符,直到遇到分号为止,所以把abc后面的 + "ss"也一并包含进去了,完全偏离了你的需求。

修正后的正则表达式

你需要精准匹配MyText.之后、分号或空格之前的内容,用这个正则就可以达到预期:

MyText\.([^;\s]+)

正则规则拆解

  • MyText\.:匹配字面量MyText.,这里的.必须转义成\.,因为正则里的.默认是匹配任意单个字符的通配符,不转义会出错。
  • ([^;\s]+):这是关键的捕获组:
    • [^;\s]是否定字符集,表示匹配任何不是分号(;)或空白字符(空格、制表符等)的字符;
    • +表示匹配一个或多个这样的字符,确保我们只抓取到xyz、abc这类符合要求的内容,不会包含后面的空格或多余字符。

测试验证

把你的输入文本MyText.xyz; MyText.abc + "ss";用这个正则匹配,会得到两个捕获结果:xyz和abc,组合起来就是你想要的MyText.xyz MyText.abc。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:20:28