日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

python正则表达式findall的使用

發(fā)布時間:2024/8/26 综合教程 43 生活家
生活随笔 收集整理的這篇文章主要介紹了 python正则表达式findall的使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章來源與:http://www.cnblogs.com/zjltt/p/6955965.html

正則表達式

正則表達式本身是一種小型的、高度專業(yè)化的編程語言,而在python中,通過內(nèi)嵌集成re模塊,程序員們可以直接調(diào)用來實現(xiàn)正則匹配。正則表達式模式被編譯成一系列的字節(jié)碼,然后由用C編寫的匹配引擎執(zhí)行。

正則表達式是用來匹配處理字符串的python 中使用正則表達式需要引入re模塊

如:

import re #第一步,要引入re模塊

a = re.findall("匹配規(guī)則", "要匹配的字符串") #第二步,調(diào)用模塊函數(shù)

以列表形式返回匹配到的字符串

如:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配規(guī)則", "這個字符串是否有匹配規(guī)則的字符")   #第二步,調(diào)用模塊函數(shù)
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)則']

View Code

^元字符

字符串開始位置與匹配規(guī)則符合就匹配,否則不匹配

匹配字符串開頭。在多行模式中匹配每一行的開頭

^元字符如果寫到[]字符集里就是反取

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("^匹配規(guī)則", "匹配規(guī)則這個字符串是否匹配")   #字符串開始位置與匹配規(guī)則符合就匹配,否則不匹配
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)則']

View Code

[^a-z]反取,匹配出除字母外的字符,^元字符如果寫到字符集里就是反取

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("[^a-z]", "匹配s規(guī)則這s個字符串是否s匹配f規(guī)則則re則則則")   #反取,匹配出除字母外的字符
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹', '配', '規(guī)', '則', '這', '個', '字', '符', '串', '是', '否', '匹', '配', '規(guī)', '則', '則', '則', '則', '則']

View Code


$元字符

字符串結(jié)束位置與匹配規(guī)則符合就匹配,否則不匹配

匹配字符串末尾,在多行模式中匹配每一行的末尾

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配規(guī)則$", "這個字符串是否匹配規(guī)則")   #字符串結(jié)束位置與匹配規(guī)則符合就匹配,否則不匹配
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)則']

View Code

*元字符

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的*元字符)前面的一個字符可以是0個或多個原本字符

匹配前一個字符0或多次,貪婪匹配前導(dǎo)字符有多少個就匹配多少個很貪婪

如果規(guī)則里只有一個分組,盡量避免用*否則會有可能匹配出空字符串

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配規(guī)則*", "這個字符串是否匹配規(guī)則則則則則")   #需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的*元字符)前面的一個字符可以是0或多個原本字符
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)則則則則則']

View Code

+元字符

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的+元字符)前面的一個字符可以是1個或多個原本字符

匹配前一個字符1次或無限次,貪婪匹配前導(dǎo)字符有多少個就匹配多少個很貪婪

#!/usr/bin/env python
# -*- coding:gbk -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配+", "匹配配配配配規(guī)則這個字符串是否匹配規(guī)則則則則則")   #需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的+元字符)前面的一個字符可以是1個或多個原本字符
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配配配配配', '匹配']

View Code

?元字符,和防止貪婪匹配

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的?元字符)前面的一個字符可以是0個或1個原本字符

匹配一個字符0次或1次

還有一個功能是可以防止貪婪匹配,詳情見防貪婪匹配

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配規(guī)則?", "匹配規(guī)這個字符串是否匹配規(guī)則則則則則")   #需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的?元字符)前面的一個字符可以是0個或1個原本字符
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)', '匹配規(guī)則']

View Code

{}元字符,范圍

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的{} 元字符)前面的一個字符,是自定義字符數(shù),位數(shù)的原本字符

{m}匹配前一個字符m次,{m,n}匹配前一個字符m至n次,若省略n,則匹配m至無限次

{0,}匹配前一個字符0或多次,等同于*元字符
{+,}匹配前一個字符1次或無限次,等同于+元字符
{0,1}匹配前一個字符0次或1次,等同于?元字符

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配規(guī)則{3}", "匹配規(guī)這個字符串是否匹配規(guī)則則則則則")   #{m}匹配前一個字符m次,{m,n}匹配前一個字符m至n次,若省略n,則匹配m至無限次
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)則則則']

View Code

[]元字符,字符集

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的[] 元字符)對應(yīng)位置是[]里的任意一個字符就匹配

字符集。對應(yīng)的位置可以是字符集中任意字符。字符集中的字符可以逐個列出,也可以給出范圍,如[abc]或[a-c]。[^abc]表示取反,即非abc。
所有特殊字符在字符集中都失去其原有的特殊含義。用反斜杠轉(zhuǎn)義恢復(fù)特殊字符的特殊含義。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配[a,b,c]規(guī)則", "匹配a規(guī)則這個字符串是否匹配b規(guī)則則則則則")   #需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的 [] 元字符)對應(yīng)位置是[]里的任意一個字符就匹配
print(a)  #以列表形式返回匹配到的字符串

View Code

[^]非,反取,匹配出除[^]里面的字符,^元字符如果寫到字符集里就是反取

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("[^a-z]", "匹配s規(guī)則這s個字符串是否s匹配f規(guī)則則re則則則")   #反取,匹配出除字母外的字符
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹', '配', '規(guī)', '則', '這', '個', '字', '符', '串', '是', '否', '匹', '配', '規(guī)', '則', '則', '則', '則', '則']

View Code

反斜杠后邊跟普通字符實現(xiàn)特殊功能;(即預(yù)定義字符)

預(yù)定義字符是在字符集和組里都是有用的

d匹配任何十進制數(shù),它相當(dāng)于類[0-9]

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("d", "匹配規(guī)則這2個字符串3是否匹配規(guī)則5則則則7則")   #d匹配任何十進制數(shù),它相當(dāng)于類[0-9]
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['2', '3', '5', '7']

View Code

d+如果需要匹配一位或者多位數(shù)的數(shù)字時用

#!/usr/bin/env python
# -*- coding:gbk -*-
import re   #第一步,要引入re模塊
a = re.findall("d+", "匹配規(guī)則這2個字符串134444是否匹配規(guī)則5則則則7則")   #d+如果需要匹配一位或者多位數(shù)的數(shù)字時用
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['2', '134444', '5', '7']

View Code

D匹配任何非數(shù)字字符,它相當(dāng)于類[^0-9]

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("D", "匹配規(guī)則這2個字符串3是否匹配規(guī)則5則則則7則")   #D匹配任何非數(shù)字字符,它相當(dāng)于類[^0-9]
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹', '配', '規(guī)', '則', '這', '個', '字', '符', '串', '是', '否', '匹', '配', '規(guī)', '則', '則', '則', '則', '則']

View Code

s匹配任何空白字符,它相當(dāng)于類[
fv]

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("s", "匹配規(guī)則   這2個字符串3是否匹
配規(guī)則5則則則7則")   #s匹配任何空白字符,它相當(dāng)于類[	
fv]
print(a)  #以列表形式返回匹配到的字符串
#打印出[' ', ' ', ' ', '
']

View Code

S匹配任何非空白字符,它相當(dāng)于類[^
fv]

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("S", "匹配規(guī)則   這2個字符串3是否匹
配規(guī)則5則則則7則")   #S匹配任何非空白字符,它相當(dāng)于類[^	
fv]
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹', '配', '規(guī)', '則', '這', '2', '個', '字', '符', '串', '3', '是', '否', '匹', '配', '規(guī)', '則', '5', '則', '則', '則', '7', '則']

View Code

w匹配包括下劃線在內(nèi)任何字母數(shù)字字符,它相當(dāng)于類[a-zA-Z0-9_]

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re   #第一步,要引入re模塊
a = re.findall('w',"https://www.cnblogs.com/")  #w匹配包括下劃線在內(nèi)任何字母數(shù)字字符,它相當(dāng)于類[a-zA-Z0-9_]
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['h', 't', 't', 'p', 's', 'w', 'w', 'w', 'c', 'n', 'b', 'l', 'o', 'g', 's', 'c', 'o', 'm']

View Code

W匹配非任何字母數(shù)字字符包括下劃線在內(nèi),它相當(dāng)于類[^a-zA-Z0-9_]

import re   #第一步,要引入re模塊
a = re.findall('W',"https://www.cnblogs.com/")  #w匹配包括下劃線在內(nèi)任何字母數(shù)字字符,它相當(dāng)于類[a-zA-Z0-9_]
print(a)  #以列表形式返回匹配到的字符串
#打印出[':', '/', '/', '.', '.', '/']

View Code

()元字符,分組

也就是分組匹配,()里面的為一個組也可以理解成一個整體

如果()后面跟的是特殊元字符如 (adc)* 那么*控制的前導(dǎo)字符就是()里的整體內(nèi)容,不再是前導(dǎo)一個字符

列1

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re   #第一步,要引入re模塊
#也就是分組匹配,()里面的為一個組也可以理解成一個整體
a = re.search("(a4)+", "a4a4a4a4a4dg4g654gb")   #匹配一個或多個a4
b = a.group()
print(b)
#打印出 a4a4a4a4a4

View Code

列2

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re   #第一步,要引入re模塊
#也就是分組匹配,()里面的為一個組也可以理解成一個整體
a = re.search("a(d+)", "a466666664a4a4a4dg4g654gb")    #匹配 (a) (d0-9的數(shù)字) (+可以是1個到多個0-9的數(shù)字)
b = a.group()
print(b)
#打印出 a466666664

View Code

|元字符,或

|或,或就是前后其中一個符合就匹配

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re   #第一步,要引入re模塊
a = re.findall(r"你|好", "a4a4a你4aabc4a4dgg好dg4g654g")   #|或,或就是前后其中一個符合就匹配
print(a)
#打印出 ['你', '好']

View Code

r原生字符

將在python里有特殊意義的字符如,轉(zhuǎn)換成原生字符(就是去除它在python的特殊意義),不然會給正則表達式有沖突,為了避免這種沖突可以在規(guī)則前加原始字符r

re模塊中常用功能函數(shù)

正則表達式有兩種書寫方式,一種是直接在函數(shù)里書寫規(guī)則,

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re   #第一步,要引入re模塊
a = re.findall("匹配規(guī)則", "這個字符串是否有匹配規(guī)則的字符")   #第二步,調(diào)用模塊函數(shù)
print(a)  #以列表形式返回匹配到的字符串
#打印出 ['匹配規(guī)則']

View Code

match()函數(shù)(以后常用)

match,從頭匹配一個符合規(guī)則的字符串,從起始位置開始匹配,匹配成功返回一個對象,未匹配成功返回None
match(pattern, string, flags=0)
# pattern: 正則模型
# string : 要匹配的字符串
# falgs : 匹配模式

注意:match()函數(shù) 與search()函數(shù)基本是一樣的功能,不一樣的就是match()匹配字符串開始位置的一個符合規(guī)則的字符串,search()是在字符串全局匹配第一個合規(guī)則的字符串

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
#無分組
origin = "hello egon bcd egon lge egon acd 19"
r = re.match("hw+", origin)    #match,從起始位置開始匹配,匹配成功返回一個對象,未匹配成功返回None
print(r.group())     # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來
print(r.groups())    # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
print(r.groupdict()) # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果
#輸出結(jié)果
# hello     匹配到的全部拿出來
# ()        沒有分組所以為空
# {}        沒分組部分定義了key的組所以為空


# 有分組
# 為何要有分組?提取匹配成功的指定內(nèi)容(先匹配成功全部正則,再匹配成功的局部內(nèi)容提取出來)
r = re.match("h(w+)", origin)   #match,從起始位置開始匹配,匹配成功返回一個對象,未匹配成功返回None
print(r.group())     # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來
print(r.groups())    # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
print(r.groupdict()) # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果
#輸出結(jié)果
# hello         匹配到的全部拿出來
# ('ello',)     有分組,在匹配到的字符串中拿出分組的部分
# {}            沒分組部分定義了key的組所以為空


# 有兩個分組定義了key
# 為何要有分組?提取匹配成功的指定內(nèi)容(先匹配成功全部正則,再匹配成功的局部內(nèi)容提取出來)
r = re.match("(?P<n1>h)(?P<n2>w+)", origin)   #?P<>定義組里匹配內(nèi)容的key(鍵),<>里面寫key名稱,值就是匹配到的內(nèi)容
print(r.group())     # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來
print(r.groups())    # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
print(r.groupdict()) # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果
#輸出結(jié)果
# hello                         匹配到的全部拿出來
# ('h', 'ello')                 有分組,在匹配到的字符串中拿出分組的部分
# {'n1': 'h', 'n2': 'ello'}     有定義了key的組所以,將定義了key的組里的內(nèi)容以字典形式拿出來

View Code

?P<n1> #?P<>定義組里匹配內(nèi)容的key(鍵),<>里面寫key名稱,值就是匹配到的內(nèi)容(只對正則函數(shù)返回對象的有用

取出匹配對象方法

只對正則函數(shù)返回對象的有用

group() # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來,有參取匹配到的第幾個如2
groups() # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
groupdict() # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果

search()函數(shù)
search,瀏覽全部字符串,匹配第一符合規(guī)則的字符串,瀏覽整個字符串去匹配第一個,未匹配成功返回None
search(pattern, string, flags=0)
# pattern: 正則模型
# string : 要匹配的字符串
# falgs : 匹配模式

注意:match()函數(shù) 與search()函數(shù)基本是一樣的功能,不一樣的就是match()匹配字符串開始位置的一個符合規(guī)則的字符串,search()是在字符串全局匹配第一個合規(guī)則的字符串

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
#無分組
origin = "hello alex bcd alex lge alex acd 19"
r = re.search("aw+", origin)    #search瀏覽全部字符串,匹配第一符合規(guī)則的字符串,瀏覽整個字符串去匹配第一個,未匹配成功返回None
print(r.group())     # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來
print(r.groups())    # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
print(r.groupdict()) # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果
#輸出結(jié)果
# alex     匹配到的全部拿出來
# ()        沒有分組所以為空
# {}        沒分組部分定義了key的組所以為空


# 有分組
# 為何要有分組?提取匹配成功的指定內(nèi)容(先匹配成功全部正則,再匹配成功的局部內(nèi)容提取出來)
r = re.search("a(w+).*(d)", origin)
print(r.group())     # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來
print(r.groups())    # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
print(r.groupdict()) # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果
#輸出結(jié)果
# alex bcd alex lge alex acd 19       匹配到的全部拿出來
# ('lex', '9')     有分組,在匹配到的字符串中拿出分組的部分
# {}            沒分組部分定義了key的組所以為空


# 有兩個分組定義了key
# 為何要有分組?提取匹配成功的指定內(nèi)容(先匹配成功全部正則,再匹配成功的局部內(nèi)容提取出來)
r = re.search("a(?P<n1>w+).*(?P<n2>d)", origin)   #?P<>定義組里匹配內(nèi)容的key(鍵),<>里面寫key名稱,值就是匹配到的內(nèi)容
print(r.group())     # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來
print(r.groups())    # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
print(r.groupdict()) # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果
#輸出結(jié)果
# alex bcd alex lge alex acd 19                         匹配到的全部拿出來
# ('lex', '9')                 有分組,在匹配到的字符串中拿出分組的部分
# {'n1': 'lex', 'n2': '9'}     有定義了key的組所以,將定義了key的組里的內(nèi)容以字典形式拿出來

View Code

findall()函數(shù)(以后常用)

findall(pattern, string, flags=0)
# pattern: 正則模型
# string : 要匹配的字符串
# falgs : 匹配模式

瀏覽全部字符串,匹配所有合規(guī)則的字符串,匹配到的字符串放到一個列表中,未匹配成功返回空列表

注意:一旦匹配成,再次匹配,是從前一次匹配成功,后面一位開始的,也可以理解為匹配成功的字符串,不在參與下次匹配

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
#無分組
r = re.findall("d+wd+", "a2b3c4d5")    #瀏覽全部字符串,匹配所有合規(guī)則的字符串,匹配到的字符串放到一個列表中
print(r)
#輸出結(jié)果
#['2b3', '4d5']
#注意:匹配成功的字符串,不在參與下次匹配,所以3c4也符合規(guī)則但是沒匹配到

View Code

注意:如果沒寫匹配規(guī)則,也就是空規(guī)則,返回的是一個比原始字符串多一位的,空字符串列表

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
#無分組
r = re.findall("", "a2b3c4d5")    #瀏覽全部字符串,匹配所有合規(guī)則的字符串,匹配到的字符串放到一個列表中
print(r)
#輸出結(jié)果
#['', '', '', '', '', '', '', '', '']
#注意:如果沒寫匹配規(guī)則,也就是空規(guī)則,返回的是一個比原始字符串多一位的,空字符串列表 

View Code


注意:正則匹配到空字符的情況,如果規(guī)則里只有一個組,而組后面是*就表示組里的內(nèi)容可以是0個或者多過,這樣組里就有了兩個意思,一個意思是匹配組里的內(nèi)容,二個意思是匹配組里0內(nèi)容(即是空白)所以盡量避免用*否則會有可能匹配出空字符串

注意:正則只拿組里最后一位,如果規(guī)則里只有一個組,匹配到的字符串里在拿組內(nèi)容是,拿的是匹配到的內(nèi)容最后一位

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
r = re.findall("(a)*", origin)   
print(r)
#輸出結(jié)果 ['', '', '', '', '', '', 'a', '', '', '', '', '', '', '', '', 'a', '', '', '', '', '', '', '', '', 'a', '', '', '', '', 'a', '', '', '', '', '', '']

View Code


無分組:匹配所有合規(guī)則的字符串,匹配到的字符串放到一個列表中

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
#無分組
origin = "hello alex bcd alex lge alex acd 19"
r = re.findall("aw+", origin)    #瀏覽全部字符串,匹配所有合規(guī)則的字符串,匹配到的字符串放到一個列表中
print(r)
#輸出結(jié)果
#['alex', 'alex', 'alex', 'acd']
#匹配所有合規(guī)則的字符串,匹配到的字符串放到一個列表中

View Code

有分組:只將匹配到的字符串里,組的部分放到列表里返回,相當(dāng)于groups()方法

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
r = re.findall("a(w+)", origin)    #有分組:只將匹配到的字符串里,組的部分放到列表里返回
print(r)
#輸出結(jié)果
#['lex', 'lex', 'lex', 'cd']

View Code

多個分組:只將匹配到的字符串里,組的部分放到一個元組中,最后將所有元組放到一個列表里返

相當(dāng)于在group()結(jié)果里再將組的部分,分別,拿出來放入一個元組,最后將所有元組放入一個列表返回

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
r = re.findall("(a)(w+)", origin)    #多個分組:只將匹配到的字符串里,組的部分放到一個元組中,最后將所有元組放到一個列表里返回
print(r)
#輸出結(jié)果
#[('a', 'lex'), ('a', 'lex'), ('a', 'lex'), ('a', 'cd')]

View Code

分組中有分組:只將匹配到的字符串里,組的部分放到一個元組中,先將包含有組的組,看作一個整體也就是一個組,把這個整體組放入一個元組里,然后在把組里的組放入一個元組,最后將所有組放入一個列表返回

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
r = re.findall("(a)(w+(e))", origin)    #分組中有分組:只將匹配到的字符串里,組的部分放到一個元組中,先將包含有組的組,看作一個整體也就是一個組,把這個整體組放入一個元組里,然后在把組里的組放入一個元組,最后將所有組放入一個列表返回
print(r)
#輸出結(jié)果
#[('a', 'le', 'e'), ('a', 'le', 'e'), ('a', 'le', 'e')]

View Code

?:在有分組的情況下findall()函數(shù),不只拿分組里的字符串,拿所有匹配到的字符串,注意?:只用于不是返回正則對象的函數(shù)如findall()

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
b = re.findall("a(?:w+)",origin) #?:在有分組的情況下,不只拿分組里的字符串,拿所有匹配到的字符串,注意?:只用于不是返回正則對象的函數(shù)如findall()
print(b)
#輸出
# ['alex', 'alex', 'alex', 'acd']

View Code


split()函數(shù)

根據(jù)正則匹配分割字符串,返回分割后的一個列表

split(pattern, string, maxsplit=0, flags=0)

# pattern: 正則模型
# string : 要匹配的字符串
# maxsplit:指定分割個數(shù)
# flags : 匹配模式

按照一個字符將全部字符串進行分割

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
r = re.split("a", origin) #根據(jù)正則匹配分割字符串
print(r)
#輸出結(jié)果 ['hello ', 'lex bcd ', 'lex lge ', 'lex ', 'cd 19']
#根據(jù)a進行分組

View Code

將匹配到的字符串作為分割標(biāo)準(zhǔn)進行分割

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex 2acd 19"
r = re.split("aw+", origin) #根據(jù)正則匹配分割字符串
print(r)
#輸出結(jié)果 ['hello ', ' bcd ', ' lge ', ' 2', ' 19']
#將匹配到的字符串作為分割標(biāo)準(zhǔn)進行分割

View Code

sub()函數(shù)

替換匹配成功的指定位置字符串

sub(pattern, repl, string, count=0, flags=0)

# pattern: 正則模型
# repl : 要替換的字符串
# string : 要匹配的字符串
# count : 指定匹配個數(shù)
# flags : 匹配模式

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
r = re.sub("a","替換",origin) #替換匹配成功的指定位置字符串
print(r)
#輸出
# hello 替換lex bcd 替換lex lge 替換lex 替換cd 19

View Code

subn()函數(shù)

替換匹配成功的指定位置字符串,并且返回替換次數(shù),可以用兩個變量分別接受

subn(pattern, repl, string, count=0, flags=0)

# pattern: 正則模型
# repl : 要替換的字符串
# string : 要匹配的字符串
# count : 指定匹配個數(shù)
# flags : 匹配模式

#!/usr/bin/env python
# -*- coding:utf8 -*-
import re
origin = "hello alex bcd alex lge alex acd 19"
a,b = re.subn("a","替換",origin) #替換匹配成功的指定位置字符串,并且返回替換次數(shù),可以用兩個變量分別接受
print(a)
print(b)
#輸出
# hello 替換lex bcd 替換lex lge 替換lex 替換cd 19
# 4

View Code

元字符表

.

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的.元字符)可以是任何一個字符,匹配任意除換行符"
"
外的字符(DOTALL模式中也能匹配換行符)

a.c

abc

1.反斜杠后邊跟元字符去除特殊功能;(即將特殊字符轉(zhuǎn)義成普通字符),2.反斜杠后邊跟普通字符實現(xiàn)特殊功能;(即預(yù)定義字符),3.2引用序號對應(yīng)的字組

a.c;a\c

a.c;ac

*

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的*元字符)前面的一個字符可以是0個或多個原本字符,匹配前一個字符0或多次,貪婪匹配前導(dǎo)字符有多少個就匹配多少個很貪婪,如果規(guī)則里只有一個分組,盡量避免用*否則會有可能匹配出空字符串

abc*

ab;abccc

+

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的+元字符)前面的一個字符可以是1個或多個原本字符,匹配前一個字符1次或無限次,貪婪匹配前導(dǎo)字符有多少個就匹配多少個很貪婪

abc+

abc;abccc

?

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的?元字符)前面的一個字符可以是0個或1個原本字符,匹配一個字符0次或1次,還有一個功能是可以防止貪婪匹配,詳情見防貪婪匹配

abc?

ab;abc

^

字符串開始位置與匹配規(guī)則符合就匹配,否則不匹配匹配字符串開頭。在多行模式中匹配每一行的開頭^元字符如果寫到[]字符集里就是反取

^abc

abc

$

字符串結(jié)束位置與匹配規(guī)則符合就匹配,否則不匹配,匹配字符串末尾,在多行模式中匹配每一行的末尾

abc$

abc

|

|或,或就是前后其中一個符合就匹配

abc|def

abc

def

{}

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的{}元字符)前面的一個字符,是自定義字符數(shù),位數(shù)的原本字符,{m}匹配前一個字符m次,{m,n}匹配前一個字符mn次,若省略n,則匹配m至無限次,{0,}匹配前一個字符0或多次,等同于*元字符,{+,}匹配前一個字符1次或無限次,等同于+元字符,{0,1}匹配前一個字符0次或1次,等同于?元字符

ab{1,2}c

abc

abbc

[]

需要字符串里完全符合,匹配規(guī)則,就匹配,(規(guī)則里的[]元字符)對應(yīng)位置是[]里的任意一個字符就匹配,字符集。對應(yīng)的位置可以是字符集中任意字符。字符集中的字符可以逐個列出,也可以給出范圍,如[abc][a-c][^abc]表示取反,即非abc。所有特殊字符在字符集中都失去其原有的特殊含義。用反斜杠轉(zhuǎn)義恢復(fù)特殊字符的特殊含義。

a[bcd]e

abe

ace

ade

()

也就是分組匹配,()里面的為一個組也可以理解成一個整體,如果()后面跟的是特殊元字符如 (adc)* 那么*控制的前導(dǎo)字符就是()里的整體內(nèi)容,不再是前導(dǎo)一個字符

(abc){2}
a(123|456)c

abcabc

a456c

預(yù)定義字符集表,可以寫在字符集[...]

d

d匹配任何十進制數(shù),它相當(dāng)于類[0-9],d+如果需要匹配一位或者多位數(shù)的數(shù)字時用

ac

a1c

D

D匹配任何非數(shù)字字符,它相當(dāng)于類[^0-9]

aDc

abc

s

s匹配任何空白字符,它相當(dāng)于類[
fv]

asc

a c

S

S匹配任何非空白字符,它相當(dāng)于類[^
fv]

aSc

abc

w

w匹配包括下劃線在內(nèi)任何字母數(shù)字字符,它相當(dāng)于類[a-zA-Z0-9_]

awc

abc

W

W匹配非任何字母數(shù)字字符包括下劃線在內(nèi),它相當(dāng)于類[^a-zA-Z0-9_]

aWc

a c

A

僅匹配字符串開頭,同^

Aabc

abc

僅匹配字符串結(jié)尾,同$

abc

abc

b匹配一個單詞邊界,也就是指單詞和空格間的位置

abc
a!bc

空格abc空格
a!bc

B

[^]

aBbc

abc

特殊分組用法表:只對正則函數(shù)返回對象的有用

(?P<name>)

?P<>定義組里匹配內(nèi)容的key(鍵),<>里面寫key名稱,值就是匹配到的內(nèi)容,在用groupdict()方法打印字符串

(?P<id>abc){2}

abcabc

(?P=name)

引用別名為<name>的分組匹配到字符串

(?P<id>d)abc(?P=id)

1abc1

5abc5

<number>

引用編號為<number>的分組匹配到字符串

(d)abc1

1abc1

5abc5

正則匹配模式表

標(biāo)志

含義

re.S(DOTALL)

使.匹配包括換行在內(nèi)的所有字符

re.I(IGNORECASE)

使匹配對大小寫不敏感

re.L(LOCALE)

做本地化識別(locale-aware)匹配,法語等

re.M(MULTILINE)

多行匹配,影響^和$

re.X(VERBOSE)

該標(biāo)志通過給予更靈活的格式以便將正則表達式寫得更易于理解

re.U

根據(jù)Unicode字符集解析字符,這個標(biāo)志影響w,W,,B

正則表達式重點

一、

r原生字符

將在python里有特殊意義的字符如,轉(zhuǎn)換成原生字符(就是去除它在python的特殊意義),不然會給正則表達式有沖突,為了避免這種沖突可以在規(guī)則前加原始字符r

二、

正則表達式,返回類型為表達式對象的

如:<_sre.SRE_Match object; span=(6, 7), match='a'>

返回對象的,需要用正則方法取字符串,

方法有

group() # 獲取匹配到的所有結(jié)果,不管有沒有分組將匹配到的全部拿出來,有參取匹配到的第幾個如2
groups() # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分的結(jié)果
groupdict() # 獲取模型中匹配到的分組結(jié)果,只拿出匹配到的字符串中分組部分定義了key的組結(jié)果

三、

匹配到的字符串里出現(xiàn)空字符

注意:正則匹配到空字符的情況,如果規(guī)則里只有一個組,而組后面是*就表示組里的內(nèi)容可以是0個或者多過,這樣組里就有了兩個意思,一個意思是匹配組里的內(nèi)容,二個意思是匹配組里0內(nèi)容(即是空白)所以盡量避免用*否則會有可能匹配出空字符串

四、

()分組

注意:分組的意義,就是在匹配成功的字符串中,在提取()里,組里面的字符串

五、

?:在有分組的情況下findall()函數(shù),不只拿分組里的字符串,拿所有匹配到的字符串,注意?:只用于不是返回正則對象的函數(shù)如findall()

總結(jié)

以上是生活随笔為你收集整理的python正则表达式findall的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

一区二区高清在线 | 天天操天天爱天天干 | 精品国产乱码 | 视频在线播放国产 | 欧美激情xxxx性bbbb | 欧美日韩一区二区三区在线免费观看 | 久久成人午夜 | 国色综合 | 精品国产乱码一区二区三区在线 | 干天天| 中文字幕在线视频国产 | 狠狠色丁香九九婷婷综合五月 | 婷婷综合导航 | 成年人在线电影 | 亚洲丝袜一区二区 | 蜜臀aⅴ国产精品久久久国产 | 99精品免费在线 | 国产99久久九九精品 | www.色午夜.com | 日本精品视频在线 | 91在线精品播放 | mm1313亚洲精品国产 | 欧美乱大交 | 午夜性生活 | 免费91麻豆精品国产自产在线观看 | 欧美一级片在线免费观看 | av东方在线 | 亚洲国产精品va在线看黑人动漫 | 97超碰.com | 人人超碰人人 | 成人午夜片av在线看 | 成人国产在线 | 91成人精品 | 欧美日韩性视频 | 中文字幕乱码一区二区 | 777奇米四色 | 在线看成人 | 日韩av免费观看网站 | 婷婷色av | 狠狠躁夜夜躁人人爽超碰91 | 久久综合成人 | 欧美极品xxxxx | 日韩色综合网 | 欧美91在线 | 午夜精品一二三区 | 免费又黄又爽视频 | 日韩高清在线不卡 | 激情欧美一区二区三区免费看 | 日韩性xxx| 最近中文字幕国语免费高清6 | 天天色天天上天天操 | 欧美日韩在线视频一区 | 久久久亚洲成人 | 免费观看mv大片高清 | 国产一区精品在线 | 一级黄色在线免费观看 | 色播五月激情综合网 | 九热在线 | 天天天在线综合网 | 91在线视频免费播放 | 狠狠干狠狠色 | 免费av在线| 成人小视频免费在线观看 | 久久久国产精品人人片99精片欧美一 | 国产精品福利无圣光在线一区 | 韩国一区二区三区视频 | 丁香六月在线观看 | 人人爱爱| 成人久久18免费网站麻豆 | 久久久久久久久久影视 | 国产在线色 | 亚洲欧美日本一区二区三区 | 久黄色 | 国产黄a三级三级 | 久久综合成人网 | 久草在线资源免费 | 久久久久久久久久电影 | 黄色毛片观看 | 狠狠色丁香久久综合网 | 国产亚洲精品久久久久久大师 | 免费高清无人区完整版 | 国产96av | 人人玩人人爽 | 国产一区二区三区黄 | 91在线文字幕 | 亚洲无吗视频在线 | 国产麻豆精品在线观看 | 中文字幕国产在线 | 免费高清无人区完整版 | 国内精品久久久久久久久 | 国产资源中文字幕 | 99久久精品国产一区二区成人 | 日韩成人黄色 | 在线视频观看91 | 国内久久久 | 亚洲精品久久在线 | 国产高清av免费在线观看 | 国产精品国产三级国产aⅴ9色 | 激情婷婷在线 | 亚洲国产一区在线观看 | 91麻豆网站 | 日韩精品久久久久久久电影竹菊 | 二区三区精品 | 中文字幕在线影院 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 色中射| 精品久久精品久久 | 国产成人精品一区二区三区 | 成人国产一区二区 | 欧洲高潮三级做爰 | 中文字幕一区二区三区在线播放 | 欧美一级淫片videoshd | 成年在线观看 | 亚洲高清视频在线观看 | 婷婷av电影| 精品一区二区在线免费观看 | 欧美在线视频二区 | 亚洲免费精品一区二区 | 六月婷婷久香在线视频 | 欧美日韩国产区 | 日韩一二区在线 | 亚洲成人欧美 | 亚洲精品国产自产拍在线观看 | 亚洲一区视频免费观看 | 国产99re| 夜夜爱av| 精品国产一区二区三区噜噜噜 | 国产一区二区成人 | 美女网站黄在线观看 | 97碰碰精品嫩模在线播放 | 国产精品免费在线 | 成人性生活大片 | 蜜桃视频在线观看一区 | 天天干天天射天天操 | 五月婷婷久久综合 | 97在线免费 | 欧美日韩国产一二 | 最近中文字幕久久 | 日韩一级片大全 | 天天在线操 | 午夜美女av | 欧美综合国产 | 精品国产色 | 日日天天| 91麻豆精品国产91久久久使用方法 | 青青河边草免费 | 7777精品伊人久久久大香线蕉 | 美女网站在线免费观看 | 日韩女同一区二区三区在线观看 | 黄色91免费观看 | 玖玖在线精品 | 久久精品1区| 91视频免费国产 | 久草在线一免费新视频 | 五月天丁香综合 | 国产精品久久久久久久久久尿 | 久久99免费 | 五月婷婷电影网 | 亚洲国产精品小视频 | 最近中文字幕久久 | 91在线中文字幕 | 中文字幕在线观看日本 | 欧美怡红院 | 色九九影院 | 在线观看亚洲视频 | 欧美91视频| 久久精品爱爱视频 | 国产一二三四在线视频 | 色婷婷视频网 | av官网在线 | 国产一级在线观看 | 国产精品综合av一区二区国产馆 | 亚洲美女精品区人人人人 | 免费黄在线观看 | 欧美成人h版电影 | 天天操夜夜拍 | 欧美午夜性 | 国产精品免费在线 | 午夜三级影院 | 久久综合操 | 国产亚洲精品久久久久久大师 | 91精品毛片| 日本91在线 | 99久久久国产免费 | 在线国产小视频 | 国产一级片视频 | 69久久99精品久久久久婷婷 | 久草在线在线精品观看 | 人人玩人人添人人 | 人九九精品 | 99热这里精品 | 婷婷激情久久 | 人人爽爽人人 | 91免费在线| 中文资源在线观看 | 国产精品欧美精品 | 激情欧美丁香 | 综合网久久 | 精品久久久久久综合日本 | 狠狠干网| 久久久蜜桃一区二区 | 亚洲国产精品电影在线观看 | 欧美伦理一区二区三区 | 欧美日韩免费在线视频 | 三级在线视频播放 | 国产又粗又猛又黄又爽 | 欧美成人按摩 | 综合久久五月天 | 一级一级一片免费 | 精品亚洲午夜久久久久91 | 国产无套精品久久久久久 | 天天激情综合网 | 欧美极品少妇xbxb性爽爽视频 | 欧洲精品久久久久毛片完整版 | 欧美久久影院 | 在线免费观看亚洲视频 | 天天摸天天操天天爽 | 久久久久亚洲精品男人的天堂 | 少妇精69xxtheporn | 美女久久久久久久 | 亚洲国产精久久久久久久 | 亚洲一区视频免费观看 | 国产91综合一区在线观看 | 女人魂免费观看 | 91精品免费 | 国产真实精品久久二三区 | 中文字幕免费不卡视频 | av成人免费在线 | 人人看97| 国产成人三级三级三级97 | 成人在线视频网 | 国产精品毛片久久久久久久 | www.天天色.com | 欧美 亚洲 另类 激情 另类 | av千婊在线免费观看 | 免费色视频在线 | 999久久精品 | 国产一区二区免费 | 九色精品| 婷婷色 亚洲 | 丁香婷婷色月天 | 丁香六月婷婷开心婷婷网 | av日韩精品 | 国产专区在线播放 | 黄色小说网站在线 | 欧美在线观看视频一区二区 | 国产又粗又长又硬免费视频 | 欧美一区二区在线免费观看 | 久久久久福利视频 | 91在线资源 | 久久免费国产电影 | 国产亚洲精品久久久久久久久久 | 91高清视频 | 99精品视频免费看 | 日韩欧美视频一区二区三区 | 国产午夜精品av一区二区 | 懂色av一区二区三区蜜臀 | 丁香婷婷色综合亚洲电影 | 亚洲精品五月 | 国产破处视频在线播放 | 最近中文字幕在线 | 国产日韩av在线 | 日本中文字幕电影在线免费观看 | 精品免费久久久久 | 久久精品一二三 | 在线 国产一区 | 日韩视频精品在线 | 日韩在线观看第一页 | 在线a人v观看视频 | 精品国产大片 | 日韩精品高清不卡 | 免费在线观看午夜视频 | 操操色 | 中文字幕免费高清 | 久久伦理电影网 | 天天天操天天天干 | 最新日本中文字幕 | 91精品婷婷国产综合久久蝌蚪 | 成人精品影视 | 欧美色综合 | 中国美女一级看片 | 在线观看视频一区二区三区 | 日韩精品视 | 精产嫩模国品一二三区 | 婷婷国产在线观看 | 亚洲精品国产电影 | 亚洲美女视频在线 | 色婷久久 | www.日日日.com | 日韩美精品视频 | 97人人人人 | 久久精品视频网站 | 天天爽人人爽 | 插插插色综合 | 中文字幕在线第一页 | 日韩免费三区 | 黄色网中文字幕 | av免费观看高清 | 久亚洲| 丝袜美女在线 | 在线观看免费av网 | 免费毛片aaaaaa | 色婷婷骚婷婷 | 这里只有精品视频在线观看 | 欧美一级视频免费 | 久久久久久精 | 亚洲一区二区精品 | 九九热1| 成人在线播放视频 | 91x色| 黄色软件在线观看视频 | 国产成人性色生活片 | 日韩网站在线观看 | 99r精品视频在线观看 | 久久精品国产亚洲精品 | 开心丁香婷婷深爱五月 | 亚洲干视频在线观看 | 国产成人三级在线观看 | 深爱激情久久 | 亚洲一区二区三区在线看 | 国产欧美精品xxxx另类 | 日本天天操 | 成年人在线播放视频 | 国产视频在线看 | 在线激情小视频 | 久久久亚洲影院 | 久久婷婷久久 | 亚洲精品国产自产拍在线观看 | 国产偷在线 | 伊人狠狠色丁香婷婷综合 | 狠狠操导航 | 国产亚洲精品久久久久久无几年桃 | 精品91久久久久 | 日韩一二区在线 | 免费日韩 精品中文字幕视频在线 | 不卡av在线免费观看 | 日韩免费电影 | 日本中文字幕在线电影 | 亚洲国产午夜 | 中文字幕在线不卡国产视频 | 99精品久久久 | 成人毛片在线视频 | 99久久婷婷国产 | 精品国产一区二区三区蜜臀 | 2019天天干天天色 | 色妞色视频一区二区三区四区 | 精品免费观看视频 | 国产一级片免费观看 | 久av电影 | 国内精品久久久久久久 | 91黄色小视频 | 成人黄在线观看 | 黄色一及电影 | 九九九热精品 | 欧美人体xx | 婷婷av电影 | 国产精品美女久久久久久久 | 午夜精品剧场 | 久久99亚洲网美利坚合众国 | 国产精品一区二区美女视频免费看 | 91精品国产三级a在线观看 | 日韩毛片一区 | 欧美日韩高清一区二区 国产亚洲免费看 | 久久久久免费网站 | 国产一区二区影院 | 91成人网在线观看 | 在线免费观看羞羞视频 | 五月天亚洲综合小说网 | 欧美日韩视频在线观看免费 | 亚洲 成人 欧美 | 91精品办公室少妇高潮对白 | 国产成人精品一二三区 | 亚洲伊人天堂 | 国产精品福利午夜在线观看 | 久久影院一区 | 99在线免费观看视频 | 在线中文字幕一区二区 | 成年人视频在线免费播放 | 亚洲激色| 99久久综合精品五月天 | 天天爱天天操天天射 | 欧美91精品国产自产 | 国产精品99久久久久人中文网介绍 | 日韩一区二区三区在线观看 | 欧美激情精品久久久 | 久久精品久久精品久久39 | 中文字幕 欧美性 | 免费三级a| 天天天天综合 | 欧美久久久久久久久久久久久 | 在线亚洲人成电影网站色www | 久久精品视频在线观看免费 | 91亚州 | a级一a一级在线观看 | 亚洲精品免费观看视频 | 在线播放一区二区三区 | 国产福利小视频在线 | 国产成人免费观看 | 久久久国产精品视频 | 九九影视理伦片 | 国产精品免费一区二区三区 | 色多多视频在线观看 | 五月婷婷毛片 | 久久精品一区二区三区中文字幕 | 国产精品一区在线观看 | 婷婷丁香狠狠爱 | 色就色,综合激情 | 亚洲精品一区二区三区在线观看 | 亚洲欧洲久久久 | 国产精品24小时在线观看 | 日日夜av| 深爱开心激情网 | 久久国产美女 | 美女福利视频 | 91麻豆精品国产91久久久使用方法 | 中文字幕三区 | 日韩欧美电影 | 久久香蕉国产 | 亚洲精品在线免费看 | 亚洲精品国产第一综合99久久 | 亚洲精品白浆高清久久久久久 | 久久久久国产精品免费 | 久草在线综合网 | 九九综合在线 | 91精品第一页 | av免费片 | 欧美美女一级片 | 伊人六月| 日韩久久久久久久久久久久 | 免费观看www7722午夜电影 | 婷婷在线不卡 | 色婷婷 亚洲 | 亚洲精品www.| 久久综合狠狠综合久久激情 | 最近高清中文字幕在线国语5 | 国产精品不卡视频 | 中文超碰字幕 | 日韩影视在线观看 | www91在线观看 | 天天天综合网 | 一二三精品视频 | 激情图片久久 | 亚洲一区二区三区毛片 | 日本精品在线视频 | av成人黄色 | 国产91在线免费视频 | 亚洲精品一区二区精华 | 福利在线看片 | 精品国产理论片 | 久久国产露脸精品国产 | 亚洲欧美va | 中文字幕在线视频一区二区 | 国产精品99久久久久 | 在线看国产视频 | 81精品国产乱码久久久久久 | 国产污视频在线观看 | 欧美精品久久天天躁 | 免费在线观看午夜视频 | 国产精品一区二区三区四 | 久久天 | 天天干天天摸天天操 | 日韩av电影国产 | 久久精品99国产精品酒店日本 | 久久美女视频 | 国产精品一区久久久久 | 在线欧美国产 | 成人h视频在线播放 | 国产在线va | 日本久久免费视频 | 国产精品精品国产色婷婷 | 成人av电影免费在线播放 | 丁香综合网 | 在线免费看黄色 | 日韩福利在线观看 | 特级西西444www大胆高清无视频 | 国产九九热| 色婷婷亚洲精品 | 欧美一区二区精美视频 | 精品一区二区三区久久久 | 久久免费视频1 | 成人av一区二区在线观看 | 国产精品中文久久久久久久 | 狠狠色丁香婷婷综合最新地址 | 就色干综合 | 免费a视频在线观看 | 亚洲综合在线视频 | 久草视频免费在线播放 | 色视频在线 | av免费黄色 | 日韩av在线网站 | 国产精品综合久久久久久 | 婷婷午夜 | 蜜桃视频精品 | 国产精品一区二区久久精品爱微奶 | av色一区 | 在线99视频 | 五月天亚洲综合小说网 | 91色网址 | 精品国产亚洲日本 | 99精品国产免费久久 | 久久久91精品国产一区二区精品 | 波多野结衣电影一区二区 | 精品久久一区二区三区 | 男女日麻批 | 精品国产乱子伦一区二区 | 欧美日韩破处 | 亚洲免费不卡 | 久久婷婷国产 | 91男人影院 | 久久精品在线免费观看 | 午夜精品久久久久久久久久久 | 91av免费观看 | 久久视频99| 99久久9| 色久综合 | 欧美一级片在线播放 | 欧美极品xxxx| 国产一级特黄毛片在线毛片 | 国产精品 999| 天天干天天做天天操 | 午夜免费视频网站 | 91在线91| 99久久精品费精品 | 欧美性黄网官网 | 日本乱码在线 | 国产精品免费久久久久久久久久中文 | 福利一区在线视频 | 最近字幕在线观看第一季 | 国产中文字幕大全 | 精品在线观看一区二区 | 亚洲精品乱码久久 | bbw av| 欧美精品国产精品 | 欧美日韩一区二区三区视频 | 最新不卡av| 美女网站免费福利视频 | 九九九热精品免费视频观看 | 国产黄色大全 | 亚洲精品乱码久久久久久蜜桃不爽 | 国产又粗又猛又色又黄网站 | av字幕在线 | 黄色亚洲精品 | 91免费国产在线观看 | 久久免费电影网 | 国产视频日韩视频欧美视频 | 欧美在线一级片 | 欧美日韩精品在线观看视频 | 黄色视屏av | 国产69久久精品成人看 | 亚洲精品456在线播放第一页 | 狠狠网 | 香蕉视频在线免费看 | 免费在线色视频 | 国产一区二区午夜 | 在线观看一级片 | 欧美精品在线视频 | 久草观看视频 | 天天综合成人网 | 免费成人在线视频网站 | www免费网站在线观看 | 国产一级二级在线播放 | free,性欧美| 色综合网在线 | 国产精品高清在线 | 亚洲激情中文 | 91成品视频 | 亚洲在线观看av | 91激情 | 探花视频在线观看免费 | 久久精品视频免费播放 | 激情开心站 | 国产女人免费看a级丨片 | 五月天综合婷婷 | 国产精品一区二区免费在线观看 | 国产精品入口久久 | 久久久精品国产免费观看一区二区 | 成 人 免费 黄 色 视频 | 午夜成人影视 | 国产一区二区三区免费在线观看 | 国产91九色视频 | 欧美视频在线观看免费网址 | 国产亚洲人成网站在线观看 | 999视频网站 | 91九色蝌蚪视频 | 久久久精品网站 | 久久久亚洲麻豆日韩精品一区三区 | 一级欧美日韩 | 亚洲人成人在线 | 亚州精品在线视频 | 日本深夜福利视频 | 久久精品国产精品亚洲 | 狠狠干成人综合网 | 一级免费av| 国际精品久久久久 | 亚洲免费精品一区二区 | 99久久久| 日韩精品视频一二三 | 亚洲精品在线视频播放 | 亚洲激情在线播放 | 九九热免费在线观看 | 国产男女免费完整视频 | 在线色视频小说 | 天天爱天天 | 岛国av在线 | 色久av| 97香蕉久久国产在线观看 | 一区二区三区在线免费观看 | 免费韩国av | 一区二区免费不卡在线 | 亚洲精品2区 | 人人澡人人草 | 欧美a级在线免费观看 | 久久久男人的天堂 | 国产区精品区 | 久草视频在线免费看 | www.黄色小说.com | 中文字幕中文字幕中文字幕 | 国产精品嫩草影视久久久 | 69av在线视频 | 免费观看不卡av | 国产精品久久久久久久免费观看 | 深爱开心激情网 | 久久97超碰 | 97网在线观看 | 欧美日韩国产亚洲乱码字幕 | 国产区免费在线 | 99精品国产福利在线观看免费 | 九色精品免费永久在线 | 久久久久看片 | 99视频在线观看免费 | 中文字幕精品三级久久久 | 日韩精品一区二区三区免费观看视频 | av成人在线看 | 91热视频在线观看 | 黄色软件在线看 | 国内精品久久久久久久久久清纯 | av天天澡天天爽天天av | 天堂黄色片 | 精品亚洲午夜久久久久91 | aaawww| 麻豆视频免费在线观看 | 久久久亚洲影院 | 99资源网| 日韩一级黄色av | 午夜精品一区二区三区免费视频 | 亚洲精品日韩av | 婷婷色影院 | 日本在线观看中文字幕无线观看 | 亚洲 欧美 精品 | 激情五月婷婷综合 | 久久福利精品 | 日韩在线视频观看免费 | 激情久久综合 | 国产亚洲精品久久久久久移动网络 | 日韩一区二区三 | 欧美一二三视频 | 久草精品视频在线观看 | 国产日韩精品在线观看 | 深爱激情综合 | 色视频在线 | 中文日韩在线 | 日韩视频区 | se婷婷| 99亚洲国产| 日韩高清三区 | 久久婷婷五月综合色丁香 | 日产乱码一二三区别在线 | 中文字幕 在线看 | 国产经典av | 亚洲精品女人 | 久久久久久伊人 | www.成人精品 | 国产xx在线 | a天堂免费 | 色五月色开心色婷婷色丁香 | 国产麻豆精品一区 | 成人资源网 | 成年人免费看的视频 | 国产99久久久国产 | 国产精品白浆 | 玖玖在线免费视频 | 婷婷在线免费 | 波多野结衣在线观看一区二区三区 | 久久人人爽人人片 | 69久久99精品久久久久婷婷 | 日韩网站中文字幕 | 99久久99久久免费精品蜜臀 | 精品美女久久久久 | 最近中文字幕免费视频 | 久久精品精品电影网 | 国产色视频网站2 | 日韩成人中文字幕 | 日本公妇在线观看高清 | 亚洲伊人网在线观看 | 91传媒免费在线观看 | 国产精品爽爽久久久久久蜜臀 | 久草电影免费在线观看 | 天天爽夜夜爽人人爽曰av | 日韩在线免费看 | 天堂在线一区 | 91成人精品一区在线播放 | 亚洲爱视频 | 99色在线观看视频 | 91成人在线免费观看 | 狠狠色香婷婷久久亚洲精品 | 国产麻豆精品在线观看 | 国产麻豆视频网站 | 成人免费xxx在线观看 | 亚洲欧美日韩国产 | 色综合天天综合 | 国产尤物在线观看 | 天天爽天天爽天天爽 | 国产精品va在线观看入 | 日韩成人中文字幕 | 911av视频| 99精品一级欧美片免费播放 | 国产色婷婷精品综合在线手机播放 | 精品久久久久久综合日本 | 国产精品久久久久久久久久 | 国产精品99精品久久免费 | 中文字幕在线人 | 99re8这里有精品热视频免费 | 中文字幕在线观看视频一区 | 精品免费久久久久久 | 91精品在线免费视频 | 国产精品99蜜臀久久不卡二区 | 91视频在线观看免费 | 欧美日韩精品在线观看 | 欧美性成人 | 激情欧美xxxx | 亚洲最快最全在线视频 | 精品中文字幕在线播放 | 久久天天操 | 国产麻豆果冻传媒在线观看 | 日韩二区三区在线观看 | 激情欧美一区二区免费视频 | 麻豆影视在线免费观看 | 久久九九精品久久 | 天堂av网在线 | 久久久美女 | 国产精品国产毛片 | 亚洲夜夜网 | 9ⅰ精品久久久久久久久中文字幕 | aaa毛片视频 | 欧美视频日韩视频 | 97色综合| 欧美国产日韩一区二区三区 | 国产精品自产拍在线观看网站 | 91九色视频| 国产一二三区在线观看 | 欧美整片sss| 91精品高清| 久久久久久久久久久成人 | 欧美日韩国产mv | 五月开心六月伊人色婷婷 | 成人sm另类专区 | 国产精品综合久久久 | 国产一性一爱一乱一交 | 在线观看视频免费播放 | 天天天天天天天操 | 一色屋精品视频在线观看 | www.综合网.com| 日韩av资源在线观看 | 日韩电影久久久 | 久久婷婷精品视频 | 日韩一级理论片 | 在线黄色国产电影 | 公与妇乱理三级xxx 在线观看视频在线观看 | 国产伦理久久精品久久久久_ | 久久精品久久久精品美女 | 日韩在线高清免费视频 | 日韩网站在线看片你懂的 | 欧美不卡视频在线 | 五月激情av | 成年人电影免费在线观看 | av超碰免费在线 | 久久精品区 | 九月婷婷综合网 | 久久字幕网 | 综合久久久久久久 | 香蕉视频在线免费 | 久久精品伊人 | 婷婷六月天天 | 国内精品久久久久影院男同志 | 国产亚洲一区 | 免费日韩在线 | 国产精品成人久久久久久久 | 免费观看www小视频的软件 | 超碰在线人人艹 | 国产精品手机在线观看 | 久久99九九99精品 | 精品不卡视频 | 亚洲综合色网站 | 欧美一级小视频 | 国产午夜三级一二三区 | 激情五月婷婷激情 | 婷婷丁香国产 | 亚洲视频 中文字幕 | 中文字幕一区二区三区四区视频 | 中文字幕乱码亚洲精品一区 | 免费看十八岁美女 | 水蜜桃亚洲一二三四在线 | 日本黄色免费大片 | 国产精品嫩草影视久久久 | 丁香婷婷综合激情五月色 | 91在线视频 | 中日韩欧美精彩视频 | 在线黄频 | 丁香六月色 | 黄色动态图xx | 久久高清片 | 国产精品亚洲a | 91麻豆精品国产自产 | 天天操夜夜爱 | 成人国产精品免费 | 69久久夜色精品国产69 | 欧美精品亚洲精品日韩精品 | aav在线| 深爱激情五月综合 | 欧美激情视频久久 | 亚洲精品九九 | 黄色片网站大全 | 91在线九色 | 国产 av 日韩| 91九色视频国产 | 日黄网站| 欧美aaa视频 | 国产中文字幕在线播放 | 国产小视频网站 | 91在线区 | 超碰在线最新地址 | 久久精品99国产国产精 | 久久精品久久综合 | 最近中文字幕高清字幕在线视频 | 特级毛片在线免费观看 | 免费看一级黄色大全 | av免费观看网址 | 最近中文字幕第一页 | 新版资源中文在线观看 | 91精品看片 | 久久婷婷国产 | 久久一本综合 | 一区二区三区在线视频111 | 国产三级精品三级在线观看 | 欧美狠狠操 | 999国产精品视频 | 中国一级特黄毛片大片久久 | 国模精品一区二区三区 | 伊人视频| 久久久国产一区二区三区四区小说 | 91久久国产自产拍夜夜嗨 | 久草视频中文在线 | 在线国产91 | 色wwwww| 最新国产中文字幕 | 四虎在线观看精品视频 | 久久激情综合 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 91爱爱免费观看 | 国产明星视频三级a三级点| 99九九热只有国产精品 | 日本中文字幕在线播放 | 午夜视频免费在线观看 | 国产精品国产亚洲精品看不卡 | 久久中文精品视频 | 亚洲国产中文字幕在线观看 | 天天综合视频在线观看 | 欧美激情精品久久久久 | 国产精品黄 | 成人黄色大片网站 | 人人爽夜夜爽 | 国产福利一区二区三区视频 | 久久乐九色婷婷综合色狠狠182 | 国产精品av在线免费观看 | 中文字幕一区二区三区视频 | 日日弄天天弄美女bbbb | 天天操天天干天天爽 | 五月激情在线 | av在线激情| 91精品视频在线 | 成年人在线免费看 | 中文字幕在线观看视频免费 | 怡红院av久久久久久久 | 日本少妇高清做爰视频 | 中文国产字幕在线观看 | 日韩,精品电影 | 日日爱视频 | 久久综合影音 | 在线视频一区观看 | 亚洲综合小说电影qvod | 91九色porny在线| 国产精品av在线免费观看 | 蜜臀久久99静品久久久久久 | 日韩系列在线观看 | 亚洲视频1区2区 | 在线91播放| 免费看三级黄色片 | 国产免费av一区二区三区 | 91在线精品一区二区 | 久久夜色精品国产欧美乱 | 99精品视频在线播放免费 | 久久综合狠狠综合 | 久久99久久99久久 | 网站你懂的| av在线免费网站 | 欧美精品一级视频 | 欧美日韩成人 | 成年人在线免费视频观看 | 五月婷婷丁香六月 | 在线观看免费色 | 欧美a级片网站 | 五月天综合网 | 国产人成一区二区三区影院 | 日本在线视频一区二区三区 | 久久精品123| 国产日韩精品在线 | 中文日韩在线 | 男女拍拍免费视频 | 欧美黄色免费 | 狠狠干天天操 | 久久免费视频这里只有精品 | 天天操天天干天天操天天干 | 丁香婷婷综合激情 | 国产中文字幕视频在线观看 | 天天激情天天干 | 精品久久久久久亚洲综合网站 | 天天激情 | 国产首页| 亚洲电影网站 | 精品亚洲网 | 国产精品中文久久久久久久 | 97在线观看 | 免费亚洲视频在线观看 | 国产成人精品综合久久久 | 成人精品99| 黄色免费电影网站 | 亚洲精品视频免费看 | 亚洲干视频在线观看 | 欧美黑人巨大xxxxx | 在线免费黄色av | 久久久久国产精品免费网站 | 久草精品视频 | 久久久精品国产一区二区 | a视频在线观看免费 | 天天爱天天射 | 日本少妇高清做爰视频 | 久久综合久久综合这里只有精品 | 日韩成人精品在线观看 | 日韩理论在线视频 | 国产精品久久av | av一区二区三区在线 | 五月婷婷综合网 | 久久夜色精品国产欧美乱 | 国产中文字幕免费 | 欧美精品小视频 | 亚洲高清视频在线播放 | 国产丝袜一区二区三区 | 色综合天天色综合 | 色a在线观看 | 免费av网址大全 | 午夜18视频在线观看 | 亚洲国产精品成人综合 | 五月黄色 | 成人免费视频视频在线观看 免费 | 亚洲激情视频在线观看 | 四虎成人精品永久免费av九九 | 欧美激情精品久久久久久免费印度 | 美女黄视频免费看 | 国产精品免费在线观看视频 | 国产美腿白丝袜足在线av | 成人在线观看日韩 | 国产日韩精品一区二区三区在线 | 香蕉看片| www.com在线观看| 午夜视频在线观看一区二区三区 | 欧美日韩在线观看一区 | 看片网站黄色 | 精品亚洲一区二区三区 | 欧美韩国日本在线 | 不卡的av在线播放 | 在线中文字母电影观看 | 免费久久网 | av日韩在线网站 | 精品国产一区二区三区av性色 | 在线看中文字幕 | 亚洲精品视频在线 | 美女视频网站久久 | 亚洲成年片| 少妇bbb好爽 | 成人夜晚看av | 成人av中文字幕 | 在线天堂中文在线资源网 | 日本爱爱免费视频 | 国产精品网红福利 | 首页中文字幕 | 免费三级a | 免费黄色在线播放 | 综合色在线 |