當前位置:首頁 » 編程語言 » python字元串replaceall

python字元串replaceall

發布時間: 2023-09-24 15:08:30

A. python 字元串替換問題

old='stsf'
pos=old.find('s')
if(pos!=-1):
new=old[:pos+1]+old[pos+1:].replace('s','A',1)
printnew
else:
print"Substring's'notfound!"

用字元串切片。


下面是更通用些的代碼(封裝成函數)。

defreplaceN(string,old,new,n):
'''Returnaofthestringwiththe'n'occurrenceofsubstring'old'replacedby'new'.
Ifsubstring'old'isnotfound,originalstringisreturned.
'''
if(n==1):returnstring.replace(old,new,1)
pos=-1;search=0
while(search<n-1):
search+=1
pos=string.find(old,pos+1)
if(pos==-1):returnstring
returnstring[:pos+1]+string[pos+1:].replace(old,new,1)

printreplaceN('stsftst','s','A',2)

B. Python處理字元串必備方法

字元串是Python中基本的數據類型,幾乎在每個Python程序中都會使用到它。

▍1、Slicing

slicing切片,按照一定條件從列表或者元組中取出部分元素(比如特定范圍、索引、分割值)

▍2、****strip()

strip()方法用於移除字元串頭尾指定的字元(默認為空格或換行符)或字元序列。

在使用strip()方法時,默認去除空格或換行符,所以#號並沒有去除。

可以給strip()方法添加指定字元,如下所示。

此外當指定內容不在頭尾處時,並不會被去除。

第一個 前有個空格,所以只會去取尾部的換行符。

最後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。

參考文獻: https://mp.weixin.qq.com/s/9cuO-KL3g9ldqRGGZBVnjw

C. python 查找字元串並將其替換

f1=open('J:/wenjian/1/1.txt','r')
for line in f1
你這里是不是少了點什麼,f1隻是文件句柄,需要執行讀操作才能遍歷,
調用readlines()

確實有更好的代碼,那就是使用re.sub,它同時包含了查找和替換兩步的操作,
而不是像你寫的那樣的字元串比較性能那麼低

熱點內容
百度雲zip怎麼解壓 發布:2025-02-01 16:31:59 瀏覽:560
pmc密碼是什麼意思 發布:2025-02-01 16:28:49 瀏覽:782
蘋果手錶和安卓手錶哪個好用 發布:2025-02-01 16:28:07 瀏覽:582
上海電信上傳 發布:2025-02-01 16:22:10 瀏覽:982
有什麼好的雙u主板配置 發布:2025-02-01 16:18:17 瀏覽:176
編程漩渦 發布:2025-02-01 16:01:51 瀏覽:327
司機會所訪問 發布:2025-02-01 15:54:11 瀏覽:780
家用電腦改成伺服器並讓外網訪問 發布:2025-02-01 15:30:23 瀏覽:354
javac工資 發布:2025-02-01 15:24:28 瀏覽:22
如何刪除伺服器登錄賬號 發布:2025-02-01 15:21:05 瀏覽:498