本文目錄一覽:
Python字符串匹配的使用方法有哪些?
1. re.match 嘗試從字符串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match()就返回none。
import re
line=”this hdr-biz 123 model server 456″
pattern=r”123″
matchObj = re.match( pattern, line)
2. re.search 掃描整個字符串並返回第一個成功的匹配。
import re
line=”this hdr-biz model server”
pattern=r”hdr-biz”
m = re.search(pattern, line)
3. Python 的re模塊提供了re.sub用於替換字符串中的匹配項。
import re
line=”this hdr-biz model args= server”
patt=r’args=’
name = re.sub(patt, “”, line)
4. compile 函數用於編譯正則表達式,生成一個正則表達式( Pattern )對象,供 match() 和 search() 這兩個函數使用。
import re
pattern = re.compile(r’\d+’)
5. re.findall 在字符串中找到正則表達式所匹配的所有子串,並返回一個列表,如果沒有找到匹配的,則返回空列表。
import re
line=”this hdr-biz model args= server”
patt=r’server’
pattern = re.compile(patt)
result = pattern.findall(line)
6. re.finditer 和 findall 類似,在字符串中找到正則表達式所匹配的所有子串,並把它們作為一個迭代器返回。
import re
it = re.finditer(r”\d+”,”12a32bc43jf3″)
for match in it:
print (match.group() )
關於Python字符串匹配的使用方法有哪些,環球青藤小編就和大家分享到這裡了,學習是永無止境的,學習一項技能更是受益終身,所以,只要肯努力學,什麼時候開始都不晚。如果您還想繼續了解關於python編程的學習方法及素材等內容,可以點擊本站其他文章學習。
Python字符串
字符串 :在python中是作為序列存在的,序列中的元素具有從左到右的順序,並根據他們的相對位置進行讀取和儲存。嚴格意義來說,字符串是一系列單個字符組成的序列,其他類型的序列還包括列表和元組。在一串字符兩側加上雙引號或者單引號即可創建字符串。
注意 :如果字符串中需要出現雙引號或者單引號,則有兩種方法。
1)使用轉義字符(\)進行轉義。
2)將雙引號和單引號配合使用,即若向想打印單引號,可以使用雙引號表示字符串,在字符串中只用一個單引號。反之亦然。
在一個字符串前面加上r;則會自動為字符串中的反斜杠\轉義,使其只代表一個反斜杠\。但是注意,原始字符串最後不能有反斜杠\,否則會發生語法錯誤。如果非要在原始字符串最後加上,則可以寫為\。
運行結果為:
有時我們需要創建一個跨行的字符串,則可以使用三引號來創建。
運行結果為
1)可以通過len()函數得到序列的長度。
運行結果為:
2)可以通過索引操作得到序列的各個元素值。python中序列的索引是從0開始依次向後推移。
運行結果為:
3)python還支持反向索引,是從最後一個向前推移的。-1是指序列中的最後一個元素值,-len(str)是指該序列的第一個元素值。
運行結果為:
4)序列還支持一種 分片(slice) 的操作,這是一種能夠一步提取整個分片的方法。
分片可以看作是字符串中一部提取出其中一部分的方法。其一般形式為:X[I:J],表示從X序列中取出第I個元素到不包含第J個元素的部分,結果為返回一個新的對象。
運行結果為:
在一個分片(slice)中,左邊界默認為0。同時應注意負偏移量在分片中的邊界,也應為左側數字比右側數字小。拷貝全部字符串的用法為str[:]。
運行結果為:
5)作為一個序列,字符串還支持用“+”來合併字符串。
運行結果為:
6) 不可變性 ,python中字符串具有不可變性,在創建一個字符串之後不可以通過對其某一位置進行賦值而改變該字符串,但可以通過創建一個新的字符串並以同一個變量名命名。
運行結果為:
7)除了一般的序列操作,字符串還有一些其特有的操作方法。
如find()方法,可以用於查找一個子字符串,可以返回該子字符串的索引值。但如果存在多個符合的子字符串,只會返回第一個索引值。如果不存在該子字符串,則返回-1。replace(S1,S2)方法會將字符串中的S1替換為S2。
運行結果如下:
關於字符串,python還有許多內置函數,可以通過調用dir()函數來查看。
Python 字符串是什麼及簡單操作方法
a=’123adzvgds’
a就是一個字符串對象
操作就很多了,str類型有很多內置方法,你可以到網上查一查教程,數據類型介紹,基本方法簡介都有的
認識Python中的數據類型 – 字符串
字符串是Python中最常用的數據類型,我們一般使用引號來創建字符串,創建字符串很簡單,只要為變量分配一個值即可,後面 python入門教程 還會學到關於字符串的下標、切片、常用操作方法。
注意:控制台顯示結果為class ‘str’,即數據類型是str(字符串)
以前我們只是簡單的用了一下字符串,比如最早學的過程中我們用了一個input()函數,它是用來接收用戶輸入的數據的,收到的數據的數據類型就是字符串。只要在Python開發環境當中,接收到的數據數據類型都是字符串類型,用戶輸入了數據就代表我們後期會使用到它,所以就要控制接收到的字符串數據,所以字符串是Python當中最常用的數據類型。
可能僅僅一個input說明不了什麼問題,後期會學到用Python語言來控制文件對的讀寫操作,在文件當中讀取寫入的數據類型都是字符串類型,所以字符串在文件這裡也是常見的類型。可能將來要學習爬蟲,要從網頁中爬取到我們想要的數據,爬取對的數據的類型本身也是字符串類型,所以字符串類型數據來源是多方多面的,之所以數據能夠獲取來是代表我們的程序要去控制它,所以避免不了要學習字符串的一些常見操作。
1、一對引號字符串(單引號或雙引號)
2、三引號字符串
返回結果:
3、單引號、雙引號和三引號之間的區別
區別:三引號形式的字符串支持換行,並且不會添加額外的字符
如果想打印出 I’m Python這種格式的英文,怎麼做?兩種方法
執行結果:
Python處理字符串必備方法
字符串是Python中基本的數據類型,幾乎在每個Python程序中都會使用到它。
▍1、Slicing
slicing切片,按照一定條件從列表或者元組中取出部分元素(比如特定範圍、索引、分割值)
▍2、****strip()
strip()方法用於移除字符串頭尾指定的字符(默認為空格或換行符)或字符序列。
在使用strip()方法時,默認去除空格或換行符,所以#號並沒有去除。
可以給strip()方法添加指定字符,如下所示。
此外當指定內容不在頭尾處時,並不會被去除。
第一個\n前有個空格,所以只會去取尾部的換行符。
最後strip()方法的參數是剝離其值的所有組合,這個可以看下面這個案例。
最外層的首字符和尾字符參數值將從字符串中剝離。字符從前端移除,直到到達一個不包含在字符集中的字符串字符為止。
在尾部也會發生類似的動作。
▍3、****lstrip()
移除字符串左側指定的字符(默認為空格或換行符)或字符序列。
同樣的,可以移除左側所有包含在字符集中的字符串。
▍4、rstrip()
移除字符串右側指定的字符(默認為空格或換行符)或字符序列。
▍5、****removeprefix()
Python3.9中移除前綴的函數。
和strip()相比,並不會把字符集中的字符串進行逐個匹配。
▍6、removesuffix()
Python3.9中移除後綴的函數。
▍7、****replace()
把字符串中的內容替換成指定的內容。
▍8、****re.sub()
re是正則的表達式,sub是substitute表示替換。
re.sub則是相對複雜點的替換。
和replace()做對比,使用re.sub()進行替換操作,確實更高級點。
▍9、****split()
對字符串做分隔處理,最終的結果是一個列表。
當不指定分隔符時,默認按空格分隔。
此外,還可以指定字符串的分隔次數。
▍10、****rsplit()
從右側開始對字符串進行分隔。
▍11、****join()
string.join(seq)。以string作為分隔符,將seq中所有的元素(的字符串表示)合併為一個新的字符串。
▍12、****upper()
將字符串中的字母,全部轉換為大寫。
▍13、****lower()
將字符串中的字母,全部轉換為小寫。
▍14、capitalize()
將字符串中的首個字母轉換為大寫。
▍15、****islower()
判斷字符串中的所有字母是否都為小寫,是則返回True,否則返回False。
▍16、isupper()
判斷字符串中的所有字母是否都為大寫,是則返回True,否則返回False。
▍17、****isalpha()
如果字符串至少有一個字符並且所有字符都是字母,則返回 True,否則返回 False。
▍18、isnumeric()
如果字符串中只包含數字字符,則返回 True,否則返回 False。
▍19、isalnum()
如果字符串中至少有一個字符並且所有字符都是字母或數字,則返回True,否則返回 False。
▍20、count()
返回指定內容在字符串中出現的次數。
▍21、****find()
檢測指定內容是否包含在字符串中,如果是返回開始的索引值,否則返回-1。
此外,還可以指定開始的範圍。
▍22、rfind()
類似於find()函數,返回字符串最後一次出現的位置,如果沒有匹配項則返回 -1。
▍23、startswith()
檢查字符串是否是以指定內容開頭,是則返回 True,否則返回 False。
**
**
▍24、****endswith()
檢查字符串是否是以指定內容結束,是則返回 True,否則返回 False。
▍25、****partition()
string.partition(str),有點像find()和split()的結合體。
從str出現的第一個位置起,把字符串string分成一個3 元素的元組(string_pre_str,str,string_post_str),如果string中不包含str則 string_pre_str==string。
▍26、center()
返回一個原字符串居中,並使用空格填充至長度width的新字符串。
▍27、ljust()
返回一個原字符串左對齊,並使用空格填充至長度width的新字符串。
▍28、rjust()
返回一個原字符串右對齊,並使用空格填充至長度width的新字符串。
▍29、f-Strings
f-string是格式化字符串的新語法。
與其他格式化方式相比,它們不僅更易讀,更簡潔,不易出錯,而且速度更快!
▍30、swapcase()
翻轉字符串中的字母大小寫。
▍31、zfill()
string.zfill(width)。
返回長度為width的字符串,原字符串string右對齊,前面填充0。
參考文獻:
原創文章,作者:ITTT,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/141794.html