正则表达式匹配md5哈希

时间:2014-02-02 22:28:32

标签: php regex match

应该使用什么类型的正则表达式来匹配md5哈希。

如何验证此类型的字符串00236a2ae558018ed13b5222ef1bd987

我尝试过这样的事情:('/^[a-z0-9]/')但它没有用。

如何实现这一目标?感谢

2 个答案:

答案 0 :(得分:35)

这是一个匹配MD5哈希的PCRE:

define('R_MD5_MATCH', '/^[a-f0-9]{32}$/i');

if(preg_match(R_MD5_MATCH, $input_string)) {
    echo "It matches.";
} else {
    echo "It does not match.";
}

答案 1 :(得分:9)

尝试ctype_xdigit

<?php

$hash = '00236a2ae558018ed13b5222ef1bd987';

var_dump(strlen($hash) === 32 && ctype_xdigit($hash));

Outputbool(true)

相关问题