我需要查看输入是否包含steam id。我尝试查看我的preg_match是否有效。
$regex = "/^STEAM_0:[01]:[0-9]{7,8}$/";
if(preg_match($regex, 'STEAM_0:1:38401525'))
{
echo 'OK'; } else {echo 'ERROR';}我在在线工具https://regex101.com/r/nI0kQ7/1中尝试过
怎么了?为什么它总是给我一个“错误”?
发布于 2015-11-04 03:03:06
我已经测试了你的代码,它运行良好,下面是代码片段
$regex = "/^STEAM_0:[01]:[0-9]{7,8}$/";
if(preg_match($regex, 'STEAM_0:1:38401525', $match))
{
echo 'OK'.PHP_EOL;
print_r($match);
} else {
echo 'ERROR';
}这将产生如下输出
OK
Array
(
[0] => STEAM_0:1:38401525
)请查看此Demo,其中的代码处于运行状态
而就是正则表达式。
发布于 2015-11-04 02:58:26
你的代码是好的,我是在php版本5.2的here上测试的,给我OK,检查你的php编译器或maiby你的完整代码。
我不能从那里保存我的代码,但添加您的问题代码以进行验证:
$regex = "/^STEAM_0:[01]:[0-9]{7,8}$/";
if(preg_match($regex, 'STEAM_0:1:38401525'))
{
echo 'OK'; } else {echo 'ERROR';}https://stackoverflow.com/questions/33506805
复制相似问题