正則表達式之常見數字驗證技巧


一:使用正則表達式驗證電話號碼,截圖

二:代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace ValidatePhone
{
    public partial class Frm_Main : Form
    {
        public Frm_Main()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (!IsTelephone(textBox1.Text))//驗證電話號碼格式是否正確
            { MessageBox.Show("電話號碼格式不正確"); }//彈出消息對話框
            else { MessageBox.Show("電話號碼格式正確"); }//彈出消息對話框
        }

        /// <summary>
        /// 驗證電話號碼格式是否正確
        /// </summary>
        /// <param name="str_telephone">電話號碼信息</param>
        /// <returns>方法返回布爾值</returns>
        public bool IsTelephone(string str_telephone)
        {
            /* 
                ^
                表示開始匹配
             * 
                [a-zA-Z0-9]
                匹配單個字母字符(a到z或A)或數字字符。
             * 
                \d{2}
               匹配兩個數字字符。
             * 
                -
               匹配一個連字符。
             * 
                \d{3}
               精確匹配三個數字字符。
             * 
                (-\d{3}){2}
                找一個連字符后跟三個數字字符,並匹配兩次出現的這種模式
             * 
                $
                表示結束匹配
             * 
                *
                代表:0次或者多次 
             * 
                +
                代表:1次或者多次 
             * 
                ?
                代表:0次或者1次 
       *
        |
         代表:或者
        *
        /
         代表:正號
        *
        \
         代表:負號
*/

           
            return System.Text.RegularExpressions.//使用正則表達式判斷是否匹配
                Regex.IsMatch(str_telephone, @"^(\d{3,4}-)?\d{6,8}$"); //3到4位區號,6到8位直播號碼
        }
    }
}

三:相關的驗證的正則表達式

密碼必須由數字和26個英文字母組成的密碼字符    @"[A-Za-z]+[0-9]"    

使用正則表達式驗證郵政編號  @"^\d{6}$"

使用正則表達式驗證手機號   @"^[1]+[3,5]+\d{9}$"

使用正則表達式驗證身份證號  @"(^\d{18}$)|(^\d{15}$)"

使用正則表達式驗證兩位小數   @"^[0-9]+(.[0-9]{2})?$"

使用正則表達式驗證一年的12個月份   @"^(0?[[1-9]|1[0-2])$"

使用正則表達式驗證一個月的31天   @"^((0?[1-9])|((1|2)[0-9])|30|31)$"

使用正則表達式驗證數字輸入     @"^[0-9]*$"

使用正則表達式驗證密碼長度   @"^\d{6,18}$"

使用正則表達式驗證非零的正整數   @"^\+?[1-9][0-9]*$"

使用正則表達式驗證非零的負整數    @"^\-[1-9][0-9]*$"

使用正則表達式驗證大寫字母   @"^[A-Z]+$"

使用正則表達式驗證小寫字母   @"^[a-z]+$"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM