判斷使用者輸入的數字是乙個合法的電話號碼的正規表示式

2021-06-07 16:23:23 字數 1680 閱讀 1932

// todo : 用正規表示式判斷乙個字串中是否為**號碼,--無誤格式為:***x-******x,***x-******xx,***-******x,***-******xx,******x,******xx

string s="333212";

pattern p=pattern.compile("^(\(\d\)|\d-)?\d$");

matcher m=p.matcher(s);

system.out.println(m.matches());

/*** 考證數字:^[0-9]*$

考證n位的數字:^\d$

考證至多n位數字:^\d$

考證m-n位的數字:^\d$

考證零和非零開頭的數字:^(0|[1-9][0-9]*)$

考證有兩位小數的正實數:^[0-9]+(.[0-9])?$

考證有1-3位小數的正實數:^[0-9]+(.[0-9])?$

考證非零的正整數:^\+?[1-9][0-9]*$

考證非零的負整數:^\-[1-9][0-9]*$

考證非負整數(正整數 + 0) ^\d+$

考證非正整數(負整數 + 0) ^((-\d+)|(0+))$

考證長度為3的字元:^.$

考證由26個英文本母組成的字串:^[a-za-z]+$

考證由26個大寫英文本母組成的字串:^[a-z]+$

考證由26個大寫英文本母組成的字串:^[a-z]+$

考證由數字和26個英文本母組成的字串:^[a-za-z0-9]+$

考證由數字、26個英文本母恐怕下劃線組成的字串:^\w+$

考證使用者密碼:^[a-za-z]\w$無誤格式為:以字母開頭,長度在6-18之間,只能包羅字元、數字和下劃線。

考證是否含有 ^%&rev;':;=?$"等字元:[^%&rev;':;=?$\x22]+

考證漢字:^[\一-\龥]:$

考證interneturl:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&rev;=]*)?$;^[a-za-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?s*)?$

考證**號碼:^(\(\d\)|\d-)?\d$:--無誤格式為:***x-******x,***x-******xx,***-******x,***-******xx,******x,******xx。

考證身份證號(15位或18位數字):^\d|\d{}18$

考證一年的12個月:^(0?[1-9]|1[0-2])$ 無誤格式為:「01」-「09」和「1」「12」

考證乙個月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$無誤格式為:01、09和1、31。

整數:^-?\d+$

非負浮點數(正浮點數 + 0):^\d+(\.\d+)?$

正浮點數^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$

非正浮點數(負浮點數 + 0) ^((-\d+(\.\d+)?)|(0+(\.0+)?))$

負浮點數^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$

浮點數 ^(-?\d+)(\.\d+)?$

*/

判斷乙個序列是否是棧的合法序列

棧的合法序列是就是通過一定次序的入棧,出棧後,能夠得到的有順序的一串數,比如說,我們將12345這五個數按照一定的入棧出棧順序進行出入棧,可以得到12345,54321 45321等序列。啦啦啦,重點來啦!我們不如就拿45321來舉例子吧 首先我們把45321這個序列存到乙個棧 s 裡面去,在宣告乙...

判斷乙個數字是否是回文

最近碰到乙個題目,其中一步判斷數字是否為回文 由於題目要求是最短時間實現,不要考慮實現本身的效率 1如果直接去實現,就是比較數字的最高位值和最低位,然後再。public boolean isp int x if x temp bit bit為數值位數 int temp1,temp2 for int ...

綜合的判斷使用者輸入的合法性的函式

限制輸入字元的位數開始 m是使用者輸入,n是要限制的位數 function issmall m,n else 限制輸入字元的位數結束 判斷密碼是否輸入一致開始 function issame str1,str2 else 判斷密碼是否輸入一致結束 判斷是否為空開始 function isnotnul...