經常使用的一些正規表示式

2021-08-08 16:42:47 字數 714 閱讀 8529

差不多夠用了,這些表示式,平常處理字串的時候很多時候會用到
sscanf()的正規表示式是從頭向後順序查詢匹配字元,找不到就返回錯誤,如下面的幾個例子:

char src = 「abcdefabcd123@456efgghi」;//乙個buf只對應乙個%,%*可以用多次

sscanf(src, 「%[a-z]」, buf);//buf=空,遇到a-z以外的字元就停止,%表示選擇,%後面的表示條件,條件s表示任意字元

sscanf(src, 「%[^a-z]」, buf);//buf=abcdef,^表示取反,即遇到a-z之間的字元就結束

sscanf(src, 「%[^a]」, buf);//buf=abcdef,從左向右獲取除a以外的字元,直到a結果

sscanf(src, 「%[^a]」, buf);//buf=空,表示後面匹配的字元不儲存([^a]本應該是abcdef,但因加了*所以沒有了即過濾掉了)

sscanf(src, 「%*[^a]%s」, buf);//buf=abcd123@456efgghi,s表示獲取字串,雖然前面沒有儲存字元,但後面的字元可以獲得並儲存

sscanf(src, 「%*[^a]%[^@]」, buf);//buf=abcd123,直到遇到a幷包含a結束

sscanf(src, 「%*[^a]a%[^@]」, buf);//buf=bcd123,直到遇到a但不包含a結束,a為定界符

一些正規表示式

要嚴格的驗證手機號碼,必須先要清楚現在已經開放了哪些數字開頭的號碼段,目前國內號碼段分配如下 移動 134 135 136 137 138 139 150 151 157 td 158 159 187 188 聯通 130 131 132 152 155 156 185 186 電信 133 153...

一些正規表示式

判斷是否是正整數if isnan paramvalue paramvalue 0 else 金額的格式判斷輸入金額的要求 整數字最多十位,小數為最多為兩位,可以無小數字 0 9 1 9 0 9 0 9 function checkmoney str 0 9 if re.test str else 手...

一些正規表示式

記錄一下 以防忘記 string hello 123 4567 world this is a regsssss res re.match w s d s d s w string 匹配到 hello 123 4567 world this 其中 代表乙個字串的開始 代表乙個字串的結尾 w 匹配字母...