正則表達(dá)式,一直以來都像是程序員的“雞肋”,既強(qiáng)大又令人頭痛。但其實(shí),正則表達(dá)式并不是一道不可逾越的技術(shù)高峰,而是一把開啟字符串寶庫的魔法鑰匙。本文將向你介紹20個(gè)常見的 Javascript 正則表達(dá)式,讓你輕松掌握它們的用法。跟著我,讓黑魔法變得輕松愉快!
1. 郵箱格式驗(yàn)證
驗(yàn)證郵箱地址是否合法,用正則表達(dá)式來一鍵搞定!
let pattern = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
let email = "example@example.com";
console.log(pattern.test(email)); // true
喔,你看,這個(gè)郵箱驗(yàn)證正則表達(dá)式就像一道防線,阻擋了那些不速之客。
2. 手機(jī)號(hào)碼格式驗(yàn)證
想驗(yàn)證手機(jī)號(hào)碼格式?這里有一個(gè)正則表達(dá)式教你如何做到。
let pattern = /^1[3456789]\d{9}$/;
let phone = "13812345678";
console.log(pattern.test(phone)); // true
如果你總是分不清哪個(gè)手機(jī)號(hào)碼是不是真的,這個(gè)正則表達(dá)式將成為你的得力助手。
3. 身份證號(hào)碼格式驗(yàn)證
身份證號(hào)碼驗(yàn)證?別擔(dān)心,正則表達(dá)式來幫你!
let pattern = /^(\d{6})(19|20)?(\d{2})(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}([0-9Xx])$/;
let idCard = "110101199001011234";
console.log(pattern.test(idCard)); // true
這個(gè)正則表達(dá)式不僅可以驗(yàn)證身份證號(hào)碼,還能識(shí)別尾號(hào)是"X"或"x"。
4. 密碼格式驗(yàn)證
驗(yàn)證密碼強(qiáng)度,確保包含大小寫字母和數(shù)字,長(zhǎng)度在6到16位之間。
let pattern = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{6,16}$/;
let password = "Abc123456";
console.log(pattern.test(password)); // true
這個(gè)正則表達(dá)式就像一位密碼守護(hù)神,確保你的密碼足夠強(qiáng)壯。
5. 日期格式驗(yàn)證(yyyy-mm-dd)
驗(yàn)證日期格式是否符合要求,保證你的日期數(shù)據(jù)不會(huì)亂七八糟。
let pattern = /^\d{4}-\d{2}-\d{2}$/;
let date = "2023-10-12";
console.log(pattern.test(date)); // true
這個(gè)正則表達(dá)式可以幫助你輕松驗(yàn)證日期字符串。
6. 時(shí)間格式驗(yàn)證(hh:mm:ss)
時(shí)間驗(yàn)證?別擔(dān)心,正則表達(dá)式來搞定!
let pattern = /^([01]\d|2[0-3]):[0-5]\d:[0-5]\d$/;
let time = "12:30:45";
console.log(pattern.test(time)); // true
這個(gè)正則表達(dá)式可以確保時(shí)間字符串的格式正確無誤。
7. URL 格式驗(yàn)證
驗(yàn)證 URL 格式,讓你不再害怕用戶輸入的網(wǎng)址是不是有效。
let pattern = /^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+/;
let url = "https://www.example.com";
console.log(pattern.test(url)); // true
這個(gè)正則表達(dá)式是你處理URL驗(yàn)證的好幫手。
8. IP 地址格式驗(yàn)證
驗(yàn)證 IP 地址格式,確保它是一個(gè)合法的IP地址。
let pattern = /^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$/;
let ip = "192.168.0.1";
console.log(pattern.test(ip)); // true
這個(gè)正則表達(dá)式將幫你輕松驗(yàn)證IP地址,防止輸入錯(cuò)誤的地址。
9. 郵政編碼格式驗(yàn)證
檢查郵政編碼是否合法,保證你的信件送到正確的地方。
let pattern = /^[1-9]\d{5}$/;
let zipCode = "100000";
console.log(pattern.test(zipCode)); // true
這個(gè)正則表達(dá)式確保郵政編碼只包含6位數(shù)字。
10. 中文字符格式驗(yàn)證
想驗(yàn)證一段文本是否包含中文字符?這個(gè)正則表達(dá)式可以搞定!
let pattern = /^[\u4e00-\u9fa5]+$/;
let chinese = "中文字符";
console.log(pattern.test(chinese)); // true
這個(gè)正則表達(dá)式將確保你的文本中包含中文字符。
11. 英文字符格式驗(yàn)證
驗(yàn)證一段文本是否只包含英文字符,這個(gè)正則表達(dá)式來幫你。
let pattern = /^[a-zA-Z]+$/;
let english = "English";
console.log(pattern.test(english)); // true
這個(gè)正則表達(dá)式可以確保文本只包含英文字符。
12. 數(shù)字格式驗(yàn)證
驗(yàn)證一串字符是否是純數(shù)字,非常簡(jiǎn)單。
let pattern = /^\d+$/;
let number = "123456";
console.log(pattern.test(number)); // true
這個(gè)正則表達(dá)式可以幫你檢查文本是否只包含數(shù)字。
13. 小數(shù)格式驗(yàn)證
需要驗(yàn)證一個(gè)小數(shù)?這個(gè)正則表達(dá)式適合你。
let pattern = /^\d+(\.\d+)?$/;
let decimal = "3.14";
console.log(pattern.test(decimal)); // true
這個(gè)正則表達(dá)式可以驗(yàn)證文本是否為小數(shù)。
14. 正整數(shù)格式驗(yàn)證
驗(yàn)證一個(gè)正整數(shù)是否合法,非常簡(jiǎn)單。
let pattern = /^[1-9]\d*$/;
let positiveInteger = "123";
console.log(pattern.test(positiveInteger)); // true
這個(gè)正則表達(dá)式將確保文本是一個(gè)正整數(shù)。
15. 負(fù)整數(shù)格式驗(yàn)證
需要驗(yàn)證一個(gè)負(fù)整數(shù)?這個(gè)正則表達(dá)式適合你。
let pattern = /^-[1-9]\d*$/;
let negativeInteger = "-123";
console.log(pattern.test(negativeInteger)); // true
這個(gè)正則表達(dá)式可以確保文本是一個(gè)負(fù)整數(shù)。
16. 非負(fù)整數(shù)格式驗(yàn)證
驗(yàn)證一個(gè)非負(fù)整數(shù)是否合法,非常簡(jiǎn)單。
let pattern = /^\d+$/;
let nonNegativeInteger = "123";
console.log(pattern.test(nonNegativeInteger)); // true
這個(gè)正則表達(dá)式將確保文本是一個(gè)非負(fù)整數(shù)。
17. 非正整數(shù)格式驗(yàn)證
需要驗(yàn)證一個(gè)非正整數(shù)?這個(gè)正則表達(dá)式適合你。
let pattern = /^(-[1-9]\d*|0)$/;
let nonPositiveInteger = "-123";
console.log(pattern.test(nonPositiveInteger)); // true
這個(gè)正則表達(dá)式可以確保文本是一個(gè)非正整數(shù)。
18. 用戶名格式驗(yàn)證
驗(yàn)證用戶名是否合法,包含大小寫字母、數(shù)字和下劃線,長(zhǎng)度在6到16位之間。
let pattern = /^[a-zA-Z0-9_]{6,16}$/;
let username = "example_123";
console.log(pattern.test(username)); // true
這個(gè)正則表達(dá)式可以確保用戶名格式正確。
19. 文件路徑格式驗(yàn)證
驗(yàn)證文件路徑是否合法,讓你不再擔(dān)心文件路徑錯(cuò)誤。
let pattern = /^([a-zA-Z]:)?(\\[^\\/:*?"<>|]+)+\\?$/;
let filePath = "C:\\Users\\example\\Desktop\\file.txt";
console.log(pattern.test(filePath)); // true
這個(gè)正則表達(dá)式可以確保文件路徑格式正確無誤。
20. HTML 標(biāo)簽格式驗(yàn)證
檢查文本中是否包含HTML標(biāo)簽,這個(gè)正則表達(dá)式可以幫你輕松實(shí)現(xiàn)。
let pattern = /<("[^"]*"|'[^']*'|[^'">])*>/;
let html = "<div>example</div>";
console.log(pattern.test(html)); // true
這個(gè)正則表達(dá)式將幫你檢測(cè)文本中是否包含HTML標(biāo)簽。
這些正則表達(dá)式示例只是冰山一角,正則表達(dá)式的應(yīng)用非常廣泛,可用于解決多種文本處理和驗(yàn)證問題。通過掌握這些常用表達(dá)式,你將更好地處理文本數(shù)據(jù),提高編程效率。
如果你想深入學(xué)習(xí)正則表達(dá)式,建議查看正則表達(dá)式的文檔和教程,以便更好地理解其工作原理和語法。
順便推薦幾個(gè)正則學(xué)習(xí)網(wǎng)站:
正則表達(dá)式101:這是一個(gè)在線工具,可以實(shí)時(shí)測(cè)試和驗(yàn)證正則表達(dá)式。它提供了即時(shí)反饋,有助于學(xué)習(xí)和調(diào)試正則表達(dá)式。網(wǎng)址:https://regex101.com/
正則表達(dá)式學(xué)習(xí)教程 - MDN Web Docs:Mozilla 開發(fā)者網(wǎng)絡(luò)提供了關(guān)于正則表達(dá)式的詳盡教程,適合初學(xué)者和高級(jí)用戶。網(wǎng)址:https://developer.mozilla.org/zh-CN/docs/Web/Javascript/Guide/Regular_Expressions
正則表達(dá)式教程 - RegexOne:這是一個(gè)交互式的正則表達(dá)式學(xué)習(xí)教程,適合初學(xué)者。你可以在線完成練習(xí)。網(wǎng)址:https://regexone.com/
正則表達(dá)式學(xué)習(xí) - Regular-Expressions.info:這個(gè)網(wǎng)站提供了廣泛的正則表達(dá)式教程和參考資料,包括語法和示例。網(wǎng)址:https://www.regular-expressions.info/
正則表達(dá)式學(xué)習(xí) - RexEgg:RexEgg 提供了深入的正則表達(dá)式教程,包括復(fù)雜模式和用例示例。網(wǎng)址:https://www.rexegg.com/
該文章在 2023/11/20 8:49:19 編輯過