左右若干數(shù)字驗證的正則表達式
更新時間:2009年11月04日 20:49:00 作者:
求一個正則表達式,要求左邊若干數(shù)字,中間間隔號-,右邊若干數(shù)字,左右數(shù)字總個數(shù)不超過20。希望能直接用,不用其它函數(shù)進行計算。
?<=和?=和?:這三種各是什么意思 ,請講解一下。
你的答案很精辟,謝謝。
給你寫了一段示例,用javascript寫的,你說的左右數(shù)字總個數(shù)不超過20,加上“-”即字符串總長度不超過21。如下:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
測試后能滿足你的要求。
你想問的應(yīng)該是以下四個環(huán)視結(jié)構(gòu)。它們不匹配任何具體的字符,只匹配一個位置,就像“^”和“$”匹配字符串的起始和結(jié)束位置。
(?=...) 正向肯定環(huán)視。其中“...”是一個正則表達式,表示在當(dāng)前位置的右邊的字符必須被“...”所匹配。
(?!...) 正向否定環(huán)視。表示當(dāng)前位置右邊的內(nèi)容必須不能被“...”所匹配。
(?<=...)和(?<!...)分別是反向肯定環(huán)視和反向否定環(huán)視,只不過方向是左邊。
至于(?:),它與普通的括號()功能相同,區(qū)別是它不會將子匹配儲存起來。某些情況下使用(?:)能提高正則表達式的效率。
再來說說表達式“/^(?=.{3,21}$)\d+-\d+$/”:
^(?=.{3,21}$) 規(guī)定了從字符串的起始位置開始,后面有3-21個任意字符,接著就是字符串的結(jié)束了。
\d+-\d+$ 這個是你的題目要求,沒什么好說的了吧。
你的答案很精辟,謝謝。
給你寫了一段示例,用javascript寫的,你說的左右數(shù)字總個數(shù)不超過20,加上“-”即字符串總長度不超過21。如下:
[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]
測試后能滿足你的要求。
你想問的應(yīng)該是以下四個環(huán)視結(jié)構(gòu)。它們不匹配任何具體的字符,只匹配一個位置,就像“^”和“$”匹配字符串的起始和結(jié)束位置。
(?=...) 正向肯定環(huán)視。其中“...”是一個正則表達式,表示在當(dāng)前位置的右邊的字符必須被“...”所匹配。
(?!...) 正向否定環(huán)視。表示當(dāng)前位置右邊的內(nèi)容必須不能被“...”所匹配。
(?<=...)和(?<!...)分別是反向肯定環(huán)視和反向否定環(huán)視,只不過方向是左邊。
至于(?:),它與普通的括號()功能相同,區(qū)別是它不會將子匹配儲存起來。某些情況下使用(?:)能提高正則表達式的效率。
再來說說表達式“/^(?=.{3,21}$)\d+-\d+$/”:
^(?=.{3,21}$) 規(guī)定了從字符串的起始位置開始,后面有3-21個任意字符,接著就是字符串的結(jié)束了。
\d+-\d+$ 這個是你的題目要求,沒什么好說的了吧。
相關(guān)文章
正則表達式實現(xiàn)手機號中間4位數(shù)隱藏或者只顯示末尾四位數(shù)
這篇文章主要介紹了正則表達式實現(xiàn)手機號中間4位數(shù)隱藏或者只顯示末尾四位數(shù)的相關(guān)知識,需要的朋友可以參考下2018-11-11Jmeter?使用Json提取請求數(shù)據(jù)的方法
這篇文章主要介紹了Jmeter?使用Json提取請求數(shù)據(jù),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04js正則表達式驗證URL函數(shù)代碼(方便多個正則對比)
下面是一段相對全面的用例測試,可以考慮使用,當(dāng)然,如果你的要求很簡單,用網(wǎng)上傳的各種簡單版,cover到自己的用例就好。2016-10-10