正則表達(dá)式:
概述
re.findall(pattern,string,flags=0):返回string中所有與pattern相匹配的全部字符串崇棠,返回形式為數(shù)組。
正則表達(dá)式的語法中將字符分為:普通字符(所有打印丸卷、不可打印的字符)枕稀;非打印字符;特殊字符(如*¥谜嫉,若要匹配這些字符本身需要加\轉(zhuǎn)義)萎坷;限定符;定位符
在java中用字符串保持正則表達(dá)式沐兰,所以其中所有用來轉(zhuǎn)義的\都通過\表示哆档。
r:代表后面是正則
普通字符
[]:匹配字符集;
\d:匹配0~9之間的數(shù)
\D:匹配除了0~9之外的所有字符
\w:匹配所有字母住闯、數(shù)字字符瓜浸、下劃線
\W:匹配除了字母、數(shù)字之外的字符
非打印字符
\s:匹配所有空白字符比原,包括換行
\S:匹配所有非空白符插佛,包括換行
\t:匹配一個(gè)制表符
\v:匹配一個(gè)垂直制表符
\56:表示字符.
\b:匹配一個(gè)單詞邊界
\B:匹配非單詞邊界
特殊字符
如果要匹配特殊字符,首先需要將字符轉(zhuǎn)移將\放在他們前面
$:標(biāo)定匹配的位置是尾部量窘;可用于判斷字符串是否為結(jié)束字符串
():標(biāo)記一個(gè)正則子表達(dá)式的開始雇寇、結(jié)束位置;子表達(dá)式可被獲取并使用
[:標(biāo)記一個(gè)中括號表達(dá)式的開始
\:將下一個(gè)字符標(biāo)記為特殊字符或原意字符、或向后引用谢床、或八進(jìn)制轉(zhuǎn)義符號
{:標(biāo)記限定符表達(dá)式的開始
|:指明兩項(xiàng)之間的一個(gè)選擇
.:匹配除換行符之外的任何單字符
^:匹配輸入字符串的開始位置兄一,在[]中使用表示不接受該表達(dá)式中的字符集合
*
+
?
限定表達(dá)式
*:匹配前面的的子表達(dá)式0次或多次
+:匹配前面的子表達(dá)式1次或多次
?:匹配前面的子表達(dá)式零次或1次识腿;或指明一個(gè)非貪婪限定符
{n}:匹配前面的表達(dá)式n次
{n,m}:匹配前面的表達(dá)式最少n次出革,最多m次
{n,}:匹配前面的表達(dá)式最少n次