繁体   English   中英

使用RegEx来计算匹配模式中字符串的长度

[英]Using RegEx to Count the Length of the String in a Matched Pattern

我整天都在努力解决。

要求如下:
-我想匹配以“ _”开头的字符串
-然后应继续使用一个或多个不区分大小写的字母
-然后应包含可选的“ _”或“-”,后跟不区分大小写的字母数字字符(此步骤至少应匹配一次)。
-然后可以选择以“ _”结尾

以上要求不是问题,因为我通过以下方式实现了这一目标:

/_?[A-Za-z]([-_]?[A-Za-z0-9])+_?/

上面的RegEx匹配:

  • 用户_
  • 用户名
  • uSer_naMe-Two_
  • _Userna-Me_t三次

问题
如何使其仅与6到25个字符匹配?

我试过了

/(_?[A-Za-z]([-_]?[A-Za-z0-9])+_?){6,25}/

但是它仍然匹配小于6的字符串,例如Use-r

在开始时放一个先行断言:

(?=^.{6,25}$)_?[A-Za-z]([-_]?[A-Za-z0-9])+_?

演示在这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM