-
注意<h2></h3>不是一對,不想要這兩個標簽之間的
(?=<\2>)表示之前出現的第二個子表達式,
有點小事。留個尾巴
查看全部 -
八面威風殺氣飄,勤王保駕顯功勞。
(?<= <h1>).+(?=<h1>)
表示匹配字符串,前面為<h1>后面為<h1>,最終只顯示中間的部分。
查看全部 -
子表達式
ex:
改進版:(+ 換成{ }? 方便控制位數)
再改版:
將127.? ?或0. 整體當作一個字符進行匹配,對這些規定重復匹配的次數
即()內的內容被當作一個字符了,元字符可以對其使用。
注意,子表達式使用時不能用findall方法
ex:
解決方法:
1.
2.
?: 非捕獲組
()默認為捕獲組,即找到一個匹配的立即返回。
查看全部 -
+表示重復1次或多次,
*表示重復0次,1次,或多次,
{1,2}表示重復1次或2次。
ex:
{1,}代表至少重復1次
ex:
{2,}至少匹配2次
{,2}至多匹配2次
其他元字符:
查看全部 -
理想的情況應該是@imooc.
但是正則表達式之中,存在貪婪機制,所以默認匹配到了最后一個 . 的位置
懶惰:
在+之后加上一個? 這樣就把貪婪的+ 轉變為了懶惰的+,匹配到第一個.
就結束了。
ex:
查看全部 -
r"[^x]ap"
代表除了以x開頭的,以ap結尾的所有元素。
簡潔正則表達式(都是相當于對復雜【】的簡單表達):
注意 \ 可以把特殊字符變為普通字符,也可以把普通字符變為特殊字符。
ex:
查看全部 -
【】是一種元字符,表示匹配內部的任意字符,或子表達式。
ex 中表示無論Pp都可以被匹配到。
. 是一個元字符,可以代表任意一個字符,包括他自己,\. 為轉義字符,只能表示 .
ex:
findall方法表示返回多個可以被匹配的元素,形成一個列表
ex:
+ 表示將前面的子表達式,字符重復一邊或多邊,
r"<h1>.+<h1>"
表示在h1標簽中間的任意所有元素均可以被匹配。
*?表示將前面的子表達式,字符重復0遍,一邊,或多邊(與+類似)
ex:
查看全部 -
正則表達式:
為了解決特定問題的一種工具。
應用場景:
查看全部 -
元字符[]:匹配內部的任意字符;[pP]ython
匹配中間:.+
元字符 . :代表任意字符元字符+ :前面一個字符或子表達式重復一遍或多遍
ab+ :一個a或若干個b,多了不限,少了不行
查看全部 -
向前向后查找(前瞻與后顧) 回溯引用 \ 特殊的字符轉換成一般的字符,一般的字符轉換成特殊的字符查看全部
-
r 忽略轉義字符查看全部
-
記錄一下學習筆記
查看全部 -
就是從模塊的第二部里修改即可。 字母大小寫應對: [大寫小寫]查看全部
-
前瞻、后顧、負前瞻、負后顧
查看全部 -
{x,y}重復次數
查看全部 -
加上?變成懶惰?
查看全部 -
[0-9] [\d] 0123456789任意之一
[^0-9] [\D] 匹配非數字
[a-z] 小寫字母任意之一
[A-Z]大寫字母任意之一
[\w] [a-z0-9A-Z] 匹配大小寫字母、數字和下劃線
[\W] 等同于[^a-z0-9A-Z] 匹配非大小寫字母、數字和下劃線
查看全部 -
正則表達式的用途:搜索和替換。
查看全部
舉報