Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
九个字母的Regexp,用'分隔/';_Regex - Fatal编程技术网

九个字母的Regexp,用'分隔/';

九个字母的Regexp,用'分隔/';,regex,Regex,我需要编写一个正则表达式,允许9个数字和/或数字以这样的格式写入:XXX/XXX/XXX。但是,每种类型中的数量可能会有所不同,因此,例如,只要最多有4个x,就可以是:XX/XXXX/XXX 我尽了最大努力,但没有想出任何解决办法 基于JavaScript的解决方案: var输入=提示(“输入某物”); var isValid=false; if(//^\d{1,4}\/\d{1,4}\/\d{1,4}$/.test(input)和&input.replace(//\//g,“”)。长度==9

我需要编写一个正则表达式,允许9个数字和/或数字以这样的格式写入:
XXX/XXX/XXX
。但是,每种类型中的数量可能会有所不同,因此,例如,只要最多有4个x,就可以是:
XX/XXXX/XXX

我尽了最大努力,但没有想出任何解决办法

基于JavaScript的解决方案:

var输入=提示(“输入某物”);
var isValid=false;
if(//^\d{1,4}\/\d{1,4}\/\d{1,4}$/.test(input)和&input.replace(//\//g,“”)。长度==9){
isValid=true;
}
log(“有效:”,isValid)仅限正则表达式

(?=\b.{11}\b)[0-9]{1,4}\/[0-9]{1,4}\/[0-9]{1,4}
  • (?=\b.{11}\b)
    一个断言您正好有11个字符(因为您有9个数字和2个斜杠)
  • [0-9]{1,4}
    一组最小1位和最大4位数字(您可以使用
    \d
    而不是
    0-9
  • \/
    斜杠转义
现场演示


别忘了打开
g
选项,这意味着你在第一场比赛后不会回来。

你能分享你的尝试吗?希望我想到使用Regex101网站,好的选择,积极的前瞻,是一个更好的方法。