所以我知道使用php is_numeric函數會更容易,但我想要做的是創建一個正則表達式,主要用於學習正則表達式,測試考試成績。範圍可以是0-100,但可以有2個小數位。這是我到目前爲止,它不工作。正則表達式驗證數字0-100,最多保留兩位小數
if (preg_match("^([0-9]){2,3})(.[0-9]{2})?$([0-9]{1})?$", $quiz1))
{
echo "match";
}
else {
$error = true;
}
如果我想正確的字面意思:
字符串的開始找0-9,爲兩個地。 可選的字符串小數末尾和找到字符0-9,兩個地方。 可選字符串結尾找字符0-9,換1位。
你的正則表達式有語法錯誤和濫用元字符。如果你打算使用正則表達式(我高度推薦你這樣做),你需要花一些時間學習(神祕的)語法。即學習元字符(這是不同的內部和外部字符類BTW),練習,練習,練習與交互式工具,如[RegexBuddy](http://www.regexbuddy.com/)或[RegexPal](http: //regexpal.com/)。有很好的免費教程可以幫助你獲得一個好的開始,例如[http://www.regular-expressions.info/](http://www.regular-expressions.info/)。 – ridgerunner