Javascript 用于字母数字字符和数字范围组合的正则表达式
我需要一个用于端口输入的正则表达式,它必须只允许这样的输入:Javascript 用于字母数字字符和数字范围组合的正则表达式,javascript,regex,string,Javascript,Regex,String,我需要一个用于端口输入的正则表达式,它必须只允许这样的输入: gei_1/8 or xgei-0/7/0/5 -它只能在开头使用下划线和连字符:gei_1或xgei-0 -然后它必须允许两个数字在0-48范围内,用正斜杠分隔,中间没有空格。不超过三个数字:/7/0/48 -它不能允许正斜杠或任何结尾 现在,我有以下用于字母数字部分的正则表达式:/^[A-Za-z][A-Za-z0-9]*(?:[A-Za-z0-9]+)*$/ 对于数字部分,我有:^(\d | 1\d | 2\d | 3\d
gei_1/8 or xgei-0/7/0/5
-它只能在开头使用下划线和连字符:gei_1
或xgei-0
-然后它必须允许两个数字在0-48范围内,用正斜杠分隔,中间没有空格。不超过三个数字:/7/0/48
-它不能允许正斜杠或任何结尾
现在,我有以下用于字母数字部分的正则表达式:/^[A-Za-z][A-Za-z0-9]*(?:[A-Za-z0-9]+)*$/
对于数字部分,我有:^(\d | 1\d | 2\d | 3\d | 4[0-8])\/(\d | 1\d | 2\d | 3\d | 4[0-8])\/(\d | 1\d | 2\d | 3\d | 4[0-8])
感谢您的帮助要将正斜杠重复1-3次,您可以使用一个范围来匹配0-48,并使用一个量词{1,3}
(?:\/(?:[0-9]|[1-3][0-9]|4[0-8])){1,3}
整个图案可能看起来像
^[A-Za-z][A-Za-z0-9]*[_-][A-Za-z0-9]+(?:\/(?:[0-9]|[1-3][0-9]|4[0-8])){1,3}$
非常感谢您@第四只鸟