红宝石正则表达式。限制最小和最大字符串长度
Posted
技术标签:
【中文标题】红宝石正则表达式。限制最小和最大字符串长度【英文标题】:Ruby regex. Limit min and max string length 【发布时间】:2021-11-22 09:05:41 【问题描述】:要求:
最少 5 个,最多 50 个符号 只有大写字母和 0-9.
/
-
space
连续不超过 1 个
不能以此特殊符号开始和结束
已经收到\A[A-Z0-9]+(?:[.\/ -][A-Z0-9]+)*\z
。
它工作正常,但不验证字符串长度。
如何添加最小-最大长度验证?
【问题讨论】:
重复Restricting Character length in Regular expression 【参考方案1】:您可以在模式的开头添加 look-ahead 以“扫描”总字符串长度,然后再执行其他模式检查。要匹配最小长度为 5 和最大长度为 50 的字符串,请将其添加到模式的开头:
(?=.5,50\z)
【讨论】:
以上是关于红宝石正则表达式。限制最小和最大字符串长度的主要内容,如果未能解决你的问题,请参考以下文章