驗證數字的正規表示式在我使用之前沒有成功
P粉690200856
P粉690200856 2023-09-13 15:00:59
0
1
523

我想在使用之前使用正規表示式驗證我的數字,但是它沒有成功。

我希望第一個數字以0開頭,接著是2或5,然後是4,其餘的數字繼續到10 位數。

<?php
$str = "0241310102";
$pattern = "([0]{1}[2,5]{1}[4]{1}[0-9]{7})";

if(preg_match($pattern, $str)){
echo "YES";
}else{
echo "NO";
}

?>

P粉690200856
P粉690200856

全部回覆(1)
P粉329425839
  1. 您需要將模式錨定到字串的開頭/結尾(^$)。
  2. 單一數字不需要被指定為字元類別[0]0
  3. #只有當量詞與1不同時才需要指定0{1}0
  4. [2,5]將包含字元類別中的逗號→ [25]
$examples = [
    "0241310102",
    "1241310102",
    "0541310102",
    "0551310102",
    "0241"
];
$pattern = '(^0[25]4[0-9]{7}$)';

foreach ($examples as $example) {
    echo $example, ": ";
    if (preg_match($pattern, $example)) {
        echo "YES", "\n";
    } else {
        echo "NO", "\n";
    }
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!