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

如何编写同时限制最大长度与指定结尾边界的正则表达式?

同时限制长度和特定结尾的正则表达式

需求匹配正则(以最大长度200为例)

^START(?s)(?=.{0,192}END).{0,192}END

规则拆解

  • ^START:锁定开头必须是START,避免匹配文本中间的零散START片段
  • (?s):开启跨行匹配模式,让.能识别换行符,适配多行文本场景
  • (?=.{0,192}END):正向预查,提前验证从START之后的192个字符内一定能找到END——192是按总长度不超过200计算的:200减去START的5个字符、END的3个字符,剩下的就是中间内容允许的最大长度
  • .{0,192}END:实际匹配从START到第一个END的完整片段,长度严格控制在200以内

自定义调整

如果需要修改最大长度,只需重新计算中间允许的字符数:
中间最大字符数 = 设定的总长度 - 5(START的长度) - 3(END的长度)
比如要限制总长度150,就把正则里的192换成150-5-3=142,得到:

^START(?s)(?=.{0,142}END).{0,142}END

适配你的示例

这个正则会匹配你给出的前两个文本片段(长度符合要求),自动排除第三个过长的片段。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 13:42:42