Web?前端常用正則校驗規(guī)則整理(常用示例)
Web 前端常用正則校驗規(guī)則
作為 Web 前端開發(fā),常用的正則校驗規(guī)則有很多。下面是一些常見的示例:
1. 校驗手機號碼
手機號碼的正則表達式可以根據(jù)不同國家和地區(qū)的手機號碼格式進行調整。以下是中國大陸的手機號碼正則表達式:
const regex = /^1[3456789]\d{9}$/;
在這個示例中,正則表達式 ^1[3456789]\d{9}$
表示:
^
表示匹配字符串的開頭。1
表示必須以數(shù)字 1 開頭。[3456789]
表示第二位必須是 3、4、5、6、7、8 或 9 中的一個。\d{9}
表示后面必須跟著 9 個數(shù)字。$
表示匹配字符串的結尾。
2. 校驗郵箱地址
郵箱地址的正則表達式可以根據(jù)不同的郵箱服務提供商進行調整。以下是一個通用的郵箱地址正則表達式:
const regex = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
在這個示例中,正則表達式 ^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
表示:
^
表示匹配字符串的開頭。\w+
表示必須以一個或多個字母、數(shù)字或下劃線開頭。([-+.]\w+)*
表示可以包含一個或多個連字符、加號或點號,后面跟著一個或多個字母、數(shù)字或下劃線。@
表示必須包含一個 @ 符號。\w+
表示必須包含一個或多個字母、數(shù)字或下劃線。([-.]\w+)*
表示可以包含一個或多個連字符或點號,后面跟著一個或多個字母、數(shù)字或下劃線。\.
表示必須包含一個點號。\w+
表示必須包含一個或多個字母、數(shù)字或下劃線。
3. 校驗身份證號碼
身份證號碼的正則表達式可以根據(jù)不同的國家和地區(qū)進行調整。以下是中國大陸身份證號碼的正則表達式:
const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}[0-9Xx]$/; // 身份證號碼為15位或18位,15位時全為數(shù)字,18位前17位為數(shù)字,最后一位是校驗位,可能為數(shù)字或字符X // const regex = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
在這個示例中,正則表達式 ^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}[0-9Xx]$
表示:
^
表示匹配字符串的開頭。[1-9]
表示第一位必須是 1 到 9 中的一個。\d{5}
表示后面必須跟著 5 個數(shù)字。(19|20)
表示第七到第十位必須是 19 或 20。\d{2}
表示第十一到第十二位必須是一個兩位數(shù)字。(0[1-9]|1[012])
表示第十三到第十四位必須是 01 到 12 中的一個。(0[1-9]|[12]\d|3[01])
表示第十五到第十六位必須是 01 到 31 中的一個。\d{3}
表示第十七到第十九位必須是三個數(shù)字。[0-9Xx]
表示最后一位可以是數(shù)字或大寫字母 X。
4. 校驗密碼強度
校驗密碼強度通常需要考慮密碼的長度、字符類型和組合方式等因素。以下是一個簡單的密碼強度正則表達式,要求密碼長度為 6 到 20 個字符,且必須包含字母和數(shù)字:
const regex = /^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]{6,20})$/;
在這個示例中,正則表達式 ^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]{6,20})$
表示:
^
表示匹配字符串的開頭。(?=.*[0-9])
表示必須包含至少一個數(shù)字。(?=.*[a-zA-Z])
表示必須包含至少一個字母。([a-zA-Z0-9]{6,20})
表示密碼長度必須為 6 到 20 個字符,且只能包含字母和數(shù)字。$
表示匹配字符串的結尾。
5. 校驗 URL 地址
校驗 URL 地址通常需要考慮 URL 的協(xié)議、主機名、端口和路徑等部分。以下是一個簡單的 URL 校驗正則表達式:
const regex = /^(http|https):\/\/([\w-]+\.)+[\w-]+(:\d+)?(\/\S*)?$/; // const regex = // /(((^https?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(?::\d+)?|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[\w]*))?)$/;
在這個示例中,正則表達式 ^(http|https):\/\/([\w-]+\.)+[\w-]+(:\d+)?(\/\S*)?$
表示:
^
表示匹配字符串的開頭。(http|https)
表示必須以 http 或 https 開頭。:\/\/
表示匹配冒號和雙斜杠。([\w-]+\.)+[\w-]+
表示匹配主機名,必須包含至少一個連字符或字母,后面跟著一個或多個字母、數(shù)字或連字符。(:\d+)?
表示匹配可選的端口號,必須以冒號和一個或多個數(shù)字結尾。(\/\S*)?
表示匹配可選的路徑,必須以斜杠開頭,后面可以跟任意非空白字符。$
表示匹配字符串的結尾。
當然,還有一些其他常用的正則校驗規(guī)則,例如:
6. 校驗郵政編碼
郵政編碼的正則表達式可以根據(jù)不同的國家和地區(qū)進行調整。以下是中國大陸郵政編碼的正則表達式:
const regex = /^[1-9]\d{5}$/;
在這個示例中,正則表達式 ^[1-9]\d{5}$
表示:
^
表示匹配字符串的開頭。[1-9]
表示第一位必須是 1 到 9 中的一個。\d{5}
表示后面必須跟著 5 個數(shù)字。$
表示匹配字符串的結尾。
7. 校驗 IP 地址
IP 地址的正則表達式可以根據(jù)不同的 IP 地址格式進行調整。以下是一個簡單的 IPv4 地址校驗正則表達式:
const regex = /^([01]?\d{1,2}|2[0-4]\d|25[0-5])\.([01]?\d{1,2}|2[0-4]\d|25[0-5])\.([01]?\d{1,2}|2[0-4]\d|25[0-5])\.([01]?\d{1,2}|2[0-4]\d|25[0-5])$/;
在這個示例中,正則表達式 ^([01]?\d{1,2}|2[0-4]\d|25[0-5])\.([01]?\d{1,2}|2[0-4]\d|25[0-5])\.([01]?\d{1,2}|2[0-4]\d|25[0-5])\.([01]?\d{1,2}|2[0-4]\d|25[0-5])$
表示:
^
表示匹配字符串的開頭。([01]?\d{1,2}|2[0-4]\d|25[0-5])
表示匹配 0 到 255 之間的數(shù)字。\.
表示匹配點號。$
表示匹配字符串的結尾。
8. 校驗護照號碼
以下是中國大陸護照號碼的正則表達式:
const regex = /^[EeGg]\d{8}$/;
在這個示例中,正則表達式 ^[EeGg]\d{8}$
表示:
^
表示匹配字符串的開頭。[EeGg]
表示第一位必須是大寫字母 E 或 G,或小寫字母 e 或 g 中的一個。\d{8}
表示后面必須跟著 8 個數(shù)字。$
表示匹配字符串的結尾。
需要注意的是,以上示例只是常用的正則校驗規(guī)則之一,實際應用中可能需要根據(jù)具體的業(yè)務需求進行調整和優(yōu)化。同時,正則表達式的編寫也需要考慮到性能和可讀性等方面的因素。
到此這篇關于Web 前端常用正則校驗規(guī)則整理(常用示例)的文章就介紹到這了,更多相關正則校驗規(guī)則 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
在ASP中用“正則表達式對象”來校驗數(shù)據(jù)的合法性
在ASP中用“正則表達式對象”來校驗數(shù)據(jù)的合法性...2006-06-06