首頁 後端開發 php教程 分享正規表示式註冊表驗證和一些常用的校驗實例

分享正規表示式註冊表驗證和一些常用的校驗實例

Jul 16, 2017 pm 01:42 PM
註冊表 表達式 驗證

正则表达式看起来好像是一大推符号组成的,让人很是头大,我想信很多人刚来时看的时候头疼,我也是的。但是不学又不行,这个是很重要的东西,今天就在这里个大家总结了一些分享正则表达式注册表验证和一些常用的校验实例。

正则表达式

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

正则表达式目的

1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);

2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

正则表达式的特点是

1.灵活性、逻辑性和功能性非常的强;

2.可以迅速地用极简单的方式达到字符串的复杂控制;

3.对于刚接触的人来说,比较晦涩难懂。

吾尝终日而思矣 不如须臾之所学也,所以学习这个要持之以恒。

注册表验证

1.获取id

function $(id){
  return document.getElementById(id);
}
登入後複製

2.验证姓名


function checkName(){
  //获取值
  var username=$('user').value;
  //判断不能为空
  if(username==''){
    $('s1').innerHTML='用户名不能为空';
    return false;
  }
  //正则表达式
  var reg=/^[a-zA-Z][a-zA-Z0-9]{4,9}$/;
  //检测输入内容是否匹配正则表达式
  if(!reg.test(username)){
    $('s1').innerHTML='用户名必须是5-10位数字或字母组成,开头不能是数字';
    return false;
  }
  //匹配,返回空
    $('s1').innerHTML='';
    return true;
}
登入後複製

备注:s1为判断提示内容,添加在输入框后

3.验证密码


function checkPwd(){
  //获得值
    同上…
  //判断不能为空
    同上…
  //正则表达式
  var reg=/^\S{6,}$/;
  //检测输入内容是否匹配正则表达式
  if(reg.test(password)==false){
    $('s2').innerHTML='密码必须是6位以上';
    return false;
  }
  //匹配,返回空
    同上…
}
登入後複製

4.验证邮箱


function checkEmail(){
  //获得值
    同上…
  //判断不能为空
    同上…
  //正则表达式
  var reg=/^\w+@\w+\.com|cn|net$/;      
  //检测输入内容是否匹配正则表达式
  if(!reg.test(email)){
    $('s3').innerHTML='邮箱不合法';
    return false;
  }
  //匹配,返回空
    同上…
}
登入後複製

5.验证手机号


function checkTel(){
  //获得值
    同上…
  //判断不能为空
    同上…
  //正则表达式
  var reg=/^1[34578]\d{9}$/;     
  //检测输入内容是否匹配正则表达式
  if(!reg.test(tel)){
    $('s4').innerHTML='手机号码不合法';
    return false;
  }
  //匹配,返回空
    同上…
}
登入後複製

6.验证身份证号

function checkCid(){
  //获得值
    同上…
  //判断不能为空
    同上…
  //正则表达式
  var reg=/^\d{15}$|^\d{17}\d|x$/;     
  //检测输入内容是否匹配正则表达式
  if(!reg.test(cid)){
    $('s5').innerHTML='身份证不合法';
    return false;
  }
  //匹配,返回空
    同上…
}
登入後複製

7.验证QQ号

function checkQQ(){
  //获得值
    同上…
  //判断不能为空
    同上…
  //正则表达式
  var reg=/^[1-9]\d{7,10}$/;     
  //检测输入内容是否匹配正则表达式
  if(!reg.test(qq)){
    $('s6').innerHTML='QQ必须是8到11数字组成,开头不能是0';
    return false;
      }
  //匹配,返回空
    同上…
}
登入後複製

8.检测所有条件

function checkAll(){
  if(checkName()&&checkPwd()&&checkEmail()&&checkTel()&&checkCid()&&checkQQ()){
    return true;
  }else{
    return false;
  }
}
登入後複製

常用的正则表达式校验

  1. 校验密码强度

密码的强度必须是包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间。

/^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$/
登入後複製

2. 校验中文

字符串仅能是中文。

/^[\\u4e00-\\u9fa5]{0,}$/
登入後複製

3. 由数字、26个英文字母或下划线组成的字符串

/^\\w+$/
登入後複製

4. 校验E-Mail 地址

同密码一样,下面是E-mail地址合规性的正则检查语句。

/[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?/
登入後複製

5. 校验身份证号码

下面是身份证号码的正则校验。15 或 18位。

15位:

/^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$/
登入後複製

18位:

 /^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$/
登入後複製

6. 校验日期

“yyyy-mm-dd“格式的日期校验,已考虑平闰年。

 /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/
登入後複製

7. 校验金额

金额校验,精确到2位小数。

/^[0-9]+(.[0-9]{2})?$/
登入後複製

8. 校验手机号

下面是国内 13、15、18开头的手机号正则表达式。(可根据目前国内收集号扩展前两位开头号码)

/^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\\d{8}$/
登入後複製

9. 判断IE的版本

IE目前还没被完全取代,很多页面还是需要做版本兼容,下面是IE版本检查的表达式。

/ ^.*MSIE[5-8](?:\\.[0-9]+)?(?!.*Trident\\/[5-9]\\.0).*$/
登入後複製

10. 校验IP-v4地址

IP4 正则语句。

/\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b/
登入後複製

以上是分享正規表示式註冊表驗證和一些常用的校驗實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

已修復: WD 我的雲未顯示在 Windows 11 中的網路上 已修復: WD 我的雲未顯示在 Windows 11 中的網路上 Oct 02, 2023 pm 11:21 PM

如果WDMyCloud未在Windows11的網路上顯示,這可能是一個大問題,尤其是當您將備份或其他重要檔案儲存在其中時。對於經常需要存取網路儲存的用戶來說,這可能是一個大問題,因此在今天的指南中,我們將向您展示如何永久解決此問題。為什麼WDMyCloud未顯示在Windows11網路上?您的MyCloud裝置、網路介面卡或網路連線未正確配置。電腦上未安裝SMB功能。 Winsock的臨時故障有時會導致此問題。如果我的雲端未顯示在網路上,我該怎麼辦?在我們開始修復問題之前,您可以執行一些初步檢查:

如何在PDF中驗證簽名 如何在PDF中驗證簽名 Feb 18, 2024 pm 05:33 PM

我們通常會接收到政府或其他機構發送的PDF文件,有些文件有數位簽章。驗證簽名後,我們會看到SignatureValid訊息和一個綠色勾號。如果簽章未驗證,會顯示有效性未知。驗證簽名很重要,以下看看如何在PDF中進行驗證。如何在PDF中驗證簽名驗證PDF格式的簽名使其更可信,文件更容易被接受。您可以透過以下方式驗證PDF文件中的簽名。在AdobeReader中開啟PDF右鍵點選簽名,然後選擇顯示簽名屬性點選顯示簽署者憑證按鈕從「信任」標籤將簽名新增至「受信任的憑證」清單中點選驗證簽名以完成驗證讓

如何透過修改Windows 10登錄來提升電腦開機速度 如何透過修改Windows 10登錄來提升電腦開機速度 Apr 19, 2024 am 08:01 AM

在使用Windows10作業系統的過程中,不少用戶發現自家電腦開機啟動耗時較長,影響了使用體驗。為了優化開機速度,有人提出可透過修改系統登錄的方式來達成目的。針對此需求,本文將深入解析如何透過合理調整Windows10登錄設定來有效提升電腦開機速度。下面一起來看看吧。操作方法1、"win+R"快速鍵開啟執行,輸入"regedit",點選"確定"開啟。 2.進入登錄編輯程式之後,依序點選左側欄中的"HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurren

微信好友輔助驗證解封的詳細方法 微信好友輔助驗證解封的詳細方法 Mar 25, 2024 pm 01:26 PM

1.打開微信進入後,點選搜尋圖標,輸入微信團隊,點選下方的服務進入。 2、進入後,點選左下方的自助工具的選項。 3、點選後,在上方的選項內,點選解封/申訴輔助驗證的選項。

如何使用正規表示式驗證IFSC代碼? 如何使用正規表示式驗證IFSC代碼? Aug 26, 2023 pm 10:17 PM

印度金融系統代碼是縮寫。參與電子資金轉移系統的印度銀行分行由一個特殊的11位元字元代碼進行識別。印度儲備銀行在網路交易中使用此代碼在銀行之間轉移資金。 IFSC程式碼分為兩個部分。銀行由前四個字元進行標識,而分行由最後六個字元進行標識。 NEFT(全國電子資金轉移)、RTGS(即時毛額結算)和IMPS(即時支付服務)是一些需要IFSC代碼的電子交易。 Method使用正規表示式驗證IFSC程式碼的一些常見方法有:檢查長度是否正確。檢查前四個字元。 Checkthefifthcharacter.Che

golang中如何驗證輸入是否為全角字符 golang中如何驗證輸入是否為全角字符 Jun 25, 2023 pm 02:03 PM

在golang中,驗證輸入是否為全角字元需要用到Unicode編碼和rune類型。 Unicode編碼是一種將字元集中的每個字元分配一個唯一的數字碼位元的字元編碼標準,其中包含了全角字元和半角字元。而rune類型是golang中用來表示Unicode字元的類型。第一步,需要將輸入轉換為rune類型的切片。這可以透過使用golang的[]rune類型來轉換,例如

如何透過登錄編輯程式在Windows 11中調整標準使用者帳戶的UAC設置 如何透過登錄編輯程式在Windows 11中調整標準使用者帳戶的UAC設置 Apr 17, 2024 pm 03:58 PM

在Windows11作業系統中,使用者帳戶控制(UAC)作為一種安全機制,能夠有效地防止未經授權的系統變更並對潛在風險進行提示。針對那些希望透過更深層設定來調整標準用戶帳戶UAC行為的用戶,本文將詳細解釋如何運用登錄編輯器這項工具,在Windows11系統中進行相應設定的變更。操作方法1、右鍵右下角工作列中的"開始",選擇選項清單中的"執行"。 2、在彈出的運行視窗中輸入"regedit",回車打開。 3、接著在給定的提示視窗中,點選"是"。 4.進入登錄編輯程式後,依序點選左側欄中的"HKEY_

PHP 8 新功能:增加了驗證和簽名 PHP 8 新功能:增加了驗證和簽名 Mar 27, 2024 am 08:21 AM

PHP8是PHP的最新版本,為程式設計師帶來了更多的便利性和功能。這個版本特別關注安全性和效能,其中一個值得注意的新功能是增加了驗證和簽章功能。在本文中,我們將深入了解這些新的功能及其用途。驗證和簽名是電腦科學中非常重要的安全概念。它們通常用於確保傳輸的數據是完整和真實的。在處理線上交易和敏感資訊時,驗證和簽名變得尤為重要,因為如果有人能夠篡改數據,可能會對

See all articles