Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.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
Php 什么样的正则表达式才能验证由减号分隔的4个部分组成的字符串_Php_Javascript_Regex - Fatal编程技术网

Php 什么样的正则表达式才能验证由减号分隔的4个部分组成的字符串

Php 什么样的正则表达式才能验证由减号分隔的4个部分组成的字符串,php,javascript,regex,Php,Javascript,Regex,我想把regex放在一起用于验证字符串,格式为“FIXED-AAAA-AAAA-AAAA”,其中“FIXED”部分是固定静态字符串,其他3部分可以包含字母数字字符a..Z和0..9 我需要用于JS和PHP的正则表达式模式。这将起作用: var my_re = /FIXED(?:-[A-Za-z0-9]+){3}/ var re = /^FIXED(?:-[a-zA-Z0-9]{4}){3}$/; 您也可以使用charactergroup\w,它通常相当于[a-zA-Z0-9],但可能包含几个

我想把regex放在一起用于验证字符串,格式为“FIXED-AAAA-AAAA-AAAA”,其中“FIXED”部分是固定静态字符串,其他3部分可以包含字母数字字符a..Z和0..9

我需要用于JS和PHP的正则表达式模式。

这将起作用:

var my_re = /FIXED(?:-[A-Za-z0-9]+){3}/
var re = /^FIXED(?:-[a-zA-Z0-9]{4}){3}$/;
您也可以使用charactergroup\w,它通常相当于[a-zA-Z0-9],但可能包含几个您可能不想要的ASCII UTF字符。

正则表达式将是

~FIXED-[a-z0-9]{4}-[a-z0-9]{4}-[a-z0-9]{4}~i

对于php,JavaScript几乎是相同的,除了结尾的修饰符i

我认为最好在开头和结尾分别添加^和$,因为模式是用于验证的。在php中也是一样的。所以,是的,这是你应该使用的一个。在我评论另一个之前,你没有看到这个。@Talus,这在JS中不受支持,对PHP不完全确定。是的,这就是为什么我删除了我的评论。但是是的,谢谢你们。在JS value.match/^DW7?:-[a-zA-Z0-9]{4}{3}$/中结束了这个,似乎正在工作@NHAHDH这是stackoverflow模板,我在编写消息时忘记将其删除。这几乎是正确的,但在您的情况下,它还将验证FIXED-Zergd-AFGGGRZGTH-A-AZER,这不是预期的效果。否则,它是全局正确的:@塔卢斯:不过,这个要求在问题中并没有那么明确。修饰语将是相同的。不同的部分是分隔符。请注意,由于您不知道固定部分包含什么,因此在此处使用i标志可能有点冒险。使用[[:alnum:]更为冗长,但更为清晰。@EricJablow:JS RegExp中不支持。我们需要您自己尝试一下。我们是来帮助你的,不是为你做你的工作。一旦你有一个解决方案的有效尝试,但不能很好地工作,那么你可以来寻求帮助。