python中常用正規表示式

2021-10-22 15:24:36 字數 3278 閱讀 9560

1)匹配字母數字和下劃線:

'[a-za-z0-9_]'等價於'\w';

取非:'[^a-za-z0-9_]'等價於'\w';

2) 匹配數字

'[0-9]'等價與'\d'

\d*:表示任意個數字。

取非:'[^0-9]'等價與'\d'

'[\u4e00-\u9fa5]'匹配單個漢字,不含標點符號

'[\u4e00-\u9fa5]+'匹配詞語或以上漢字

取非:'[^\u4e00-\u9fa5]'匹配非漢字

'(\w+@\w+\.\w+)+'

'(\s+@\s+\.\s+)+'

手機號:@"^(13[0-9]|15[0|3|6|7|8|9]|18[8|9])\d$"

中國座機:'(\d-\d)+'

## 示例

import re

a ="a44444 500235189810081601 50023518981008160x notff 023-81710110 444 404-81710110 +86-17378388114 4f0104 404500 0011 f40 [email protected] 張三 99 深圳4\n"

# reg = re.compile('.') # . 匹配所有字元,不包括換行

# reg = re.compile('.+') # . 匹配所有,除了換行,多個字元一起返回

# reg = re.compile('[404]') # [abc]匹配a,b或c單個字元

# reg = re.compile('[^404]') # [^abc]匹配除a,b,c外的一切字元,包括換行,單個匹配返回

# + 匹配1個或多個的表示式。

# reg = re.compile('[104]+') # [abc]+ 匹配a,b,c,a+,ab+,abc+,acb+,bacc+等的單個或多個中括號內元素任意個數和任意位置組合的匹配

# reg = re.compile('[104]*') # * 匹配0個或多個的表示式,0個返回""

# reg = re.compile('\d+?') # ? 匹配0個或1個由前面的正規表示式定義的片段,非貪婪方式。\d 匹配任意數字,等價於 [0-9].

# reg = re.compile('[\u4e00-\u9fa5]+')

# reg = re.compile('\d') # 精確匹配 n 個前面表示式。

# reg = re.compile('\d') # 精確匹配 n 個或以上的前面表示式。

# reg = re.compile(r'\df')

# reg = re.compile(r'\d') # re--匹配 n 到 m 次由前面的正規表示式定義的片段,貪婪方式

# reg = re.compile(r'f| 4+')# a| b 匹配a或b

# reg = re.compile(r'(f\d+)')# (re) 對正規表示式分組並記住匹配的文字

# reg = re.compile(r'(\w\d+)')# \w匹配字母數字及下劃線

# reg = re.compile(r'(\w\d+)')# \w 匹配非字母數字及下劃線

# reg = re.compile(r'(\w\s+)')# \s 匹配任意空白字元,等價於 [ \t\n\r\f]。

# reg = re.compile(r'(\w\s+)')# \s 匹配任意非空字元。

# reg = re.compile(r'(\d\s)')# \d 匹配任意非數字。

# reg = re.compile(r'(\a\w+)')# \a 匹配字串開始。

# reg = re.compile(r'\w\b')# \b 匹配乙個單詞邊界,也就是指單詞和空格間的位置。

# reg = re.compile(r'\w+\b')# 匹配乙個單詞。

# reg = re.compile(r'\w\b')# \b 匹配非單詞邊界。

# reg = re.compile(r'\w\n')# \n, \t, 等. 匹配乙個換行符。匹配乙個製表符

# reg = re.compile(r'\w\n')# \b 匹配非單詞邊界。

# reg = re.compile(r'[a-za-z0-9_]+')# [a-za-z0-9_] 匹配任何字母及數字_

# reg = re.compile(r'(\w+@\w+\.\w+)+')

# reg = re.compile(r'(\s+@\s+\.\s+)+')

# reg = re.compile(r'(\d-\d)+') # 匹配中國大陸固定** 乙個以上

# reg = re.compile(r'(\+86-1\d)+') # 匹配中國大陸手機號碼 乙個以上

# reg = re.compile(r'(https://\w+\.\w+\.\w+)+') # 匹配**

# reg = re.compile(r'(https://\s+\.\s+\.\s+)+') # 匹配**

# reg = re.compile(r'(http[s]?://(\w+\.)\w+)+') # 匹配**

reg = re.

compile

(r'(\d[\dx])+'

)# 匹配省份證號

result = reg.findall(a)

print

(result)

# print("".join(result))

其他資料:

1、 re模組用法詳解:涉及的函式的用法。

2、python正規表示式。

3、 python正規表示式操作:個元素含義。

python中常用正規表示式

print re.findall d 123abc 數字 1 2 3 print re.findall d abcaa123abc 非數字 a b c a a a b c print re.findall abc 123abcaaabc abc abc print re.findall aa nab...

Python常用正規表示式

常用正規表示式 單個字元 符號 含義 除換行以外所有字元 a w a w 之間任意乙個字元 d 數字 0 9 d 非數字 w 數字 字母 下劃線 中文 w 非 w 的字元 s 所有的空白字元 s 非空白 數量修飾 符號 含義 任意多次 0 次 至少一次 1 次 可有可無 0 或 1 次 固定 m 次...

Java中常用的正規表示式

public class stringregex 檢查 輸入是否正確 正確格式 012 87654321 0123 87654321 0123 7654321 param value return public boolean checktel string value d d d d 3 d 8 ...