略
建立regex物件時,為什麼常用原始字串?
使用原始字串r
,表示式較為簡潔,如果不加r
, 則需要寫成re.compile('\\d+')
來匹配多個數字
search()
方法返回什麼?
search
返回乙個match
物件,使用match
物件的group
方法,返回實際匹配的文字分組
通過match物件,如何獲得匹配該模式的實際字串? 通過match物件,如何獲得匹配該模式的實際字串?同4略
括號和句點在正規表示式中的有特殊的含義,如何指定正規表示式匹配真正的括號和句點字元?
()
用於匹配分組,.
用於匹配任意字元
使用轉義匹配
findall()
返回乙個字串的列表或者字串元組的列表,是什麼決定它提供哪種返回?
正規表示式中若有分組,將返回元組的列表;
若無分組,直接返回找到的匹配;
正規表示式中,|
+
*
\d
\w
\s
\w
\s
\d
代表什麼意思?
|
管道 代表匹配的並列關係
hahah| xixixi
將匹配 hahah 或 xixixi
+
匹配一次或多次
*
匹配0次或多次
\d
匹配數字
\s
匹配空格
\w
除數字外的所有字元
\d
除單詞外的所有字元
\s
除空格外的所有字元略略
正規表示式中,和
之間的區別是什麼?
代表長度為3的連續數字串
代表查詢長度為[3,5]的連續數字串,優先查詢長度5,4,3略略
如何讓正規表示式不區分大小寫
re.complie('hahahxiixxixiixixi',re.ignorecase)
或
re.complie('hahahxiixxixiixixi',re.i)
re.dotall
作為第二引數傳遞給re.compile
/re.verbose
,會匹配什麼?
re.dotall
該模式下遇到換行符不會停止匹配
re.verbose
該模式下空格,tab,換行符將被忽略
.*
*?
之間的區別是什麼?
匹配除下劃線外的任意字元,.*
為貪心匹配*?
為非貪心匹配
匹配所有數字和小寫字母的字元分類語法是什麼?
re.compile('r[a-z][a-z][0-9]')
#求返回結果
17. 略
18. 寫一正規表示式,匹配每3位就有乙個逗號的數字
19. 匹配nakamoto
的完整姓名。 假定名字總是出現在姓前面,是乙個大寫字母開頭的單詞。該正規表示式必須匹配:
satoshi nakamoto
alice nakamoto
robocop nakamoto
但不匹配satoshi nakamoto
mr.nakamoto
nakamoto
satoshi nakamoto
Python程式設計快速上手 實踐專案
例如,字典值 意味著玩家有1條繩索 6個火把 42枚金幣等。寫乙個名為displayinventory 的函式,它接受任何可能的物品清單,並顯示如下 inventory 12 arrow 42 gold coin 1 rope 6 torch 1 dagger total number of ite...
《Python遊戲程式設計快速上手》 導讀
在寫作本書的過程中,我意識到,像python這樣的現代語言使得程式設計更加容易,並且為新一代的程式設計師提供了更多的功能。python擁有平緩的學習曲線,而且是供專業程式設計師使用的一種正規語言。目前的程式設計書籍大多分為兩種型別。第一種,與其說是教程式設計的書,倒不如說是在教 遊戲製作軟體 或教授...
Python程式設計快速上手 global 語句
如果要在乙個函式內修改全域性變數,就使用 global 語句。如果在函式的頂部有 global eggs 這樣的 它就告訴python 這個函式中,eggs 指的是全域性變數,所以不要用這個名字建立乙個區域性變數。示例 samename2.py def spam global eggs eggs s...