python笔记:正则表达式
1 正則表達(dá)式
帶?的都是非貪婪匹配,匹配的越少越好
1.1 正則表達(dá)式中的轉(zhuǎn)義符
注:\w還包含_
大寫的字母一般是”不“的意思
字符串開頭和結(jié)尾一個A一個z正好是26個字母的開始和結(jié)尾
2 正則表達(dá)式相關(guān)函數(shù)(re包)
| re.match(pattern,string) | 從字符串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,返回none pattern——需要匹配的正則表達(dá)式 string——需要匹配的字符串 |
| search(pattern,string) | 掃描整個字符串并返回第一個成功的匹配。 pattern——需要匹配的正則表達(dá)式 string——需要匹配的字符串 re.match只匹配字符串的開始,如果字符串開始不符合正則表達(dá)式,則匹配失敗,函數(shù)返回None;而re.search匹配整個字符串,直到找到一個匹配。 |
| compile | 用于編譯正則表達(dá)式,生成一個正則表達(dá)式( Pattern )對象. 直接使用這個正則表達(dá)式對象進(jìn)行 match() 和 search() 這兩個函數(shù)。 |
| sub | 用于替換字符串中的匹配項(xiàng) |
| findall | 以列表的形式返回能匹配的子串 需要匹配的內(nèi)容是連續(xù)的五個非數(shù)字的子串 |
| finditer | 搜索string,返回一個迭代器 |
3 分組?
如果正則表達(dá)式中定義了組,就可以在Match對象上用group()方法提取出子串來。
注意到group(0)永遠(yuǎn)是原始字符串,group(1)、group(2)……表示第1、2、……個子串。
? ? ? ?如果我們分的組過多,記不住是第幾個了。那么我們可以在每一組需要匹配的pattern前面加上" ?P<…> ",之后就可以用<>里面的東西進(jìn)行索引了
總結(jié)
以上是生活随笔為你收集整理的python笔记:正则表达式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 博弈论笔记:逆向选择与非对称信息
- 下一篇: python笔记:深拷贝与浅拷贝