重复字符X次,但不计算介于(Regex)之间的Y个字符

  • 本文关键字:字符 Regex 之间 计算 regex
  • 更新时间 :
  • 英文 :


我需要一个执行以下操作的正则表达式:

  • 重复任意数量x次数
  • 忽略字符并不对其计数(例如:空白和"/"(

这是我现在拥有的正则表达式:[0-9]{0,5}

然而,它不包括以下合法字符串:

1 2 3 4 5
123/45
1234 5
1 234 4
1/234/5
1/234 5
1 2/3 4/5
1     2345
1 ////23/////45

我试过了:

[s*/*0-9]{0,5} //counts unwanted characters
[0-9s/]{0,5} //counts unwanted characters
[0-9-s+/]{0,5} //counts unwanted characters
[s+/-]{0,}[0-9]{0,5} // does not mix 

这在regex中可能吗?

我可以做的另一个解决方案是删除这些字符,然后与模式进行比较。

您可以使用的正则表达式是

(?:[ /]*d){0,5}

请参阅regex演示详细信息

  • (?:-非捕获组的开始:
    • [ /]*-零个或多个空格或斜线
    • d-一位数字
  • ){0,5}-组末,匹配0到5次

如果您需要匹配最后一位后的任何空格或斜线,请在末尾添加[ /]*

(?:[ /]*d){0,5}[ /]*

最新更新