区分 3 个不同的字符串输出


differentiate between 3 different string outputs

我正在从一个网站上抓取一个字符串,其中输出可以是看起来像 28.18 的日期。或像 18:00 这样的时间或像 1:2 这样的分数。如何检查抓取的字符串是否等于日期、时间或分数?一个乐谱永远不会超过一个字符。

现场演示

您可以使用 3 个正则表达式模式来了解哪个模式与给定字符串匹配:

<?php
$subject = "1:1";
if(preg_match('/^'d+'.'d+$/', $subject)){ // Ex: 1.1
    echo "date";    
}else if(preg_match('/^'d':'d$/', $subject)){ // Ex: 1:1
    echo "score";
}else if(preg_match('/^'d{2}':'d{2}$/', $subject)){ // Ex: 01:00
    echo "time";
}
?>