我正在从一个网站上抓取一个字符串,其中输出可以是看起来像 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";
}
?>