欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中sub()的用法說明

 更新時(shí)間:2021年04月09日 10:11:48   作者:圍城客  
這篇文章主要介紹了Python中sub()的用法說明,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧

Python來進(jìn)行查詢和替換一個(gè)文本字符串?

可以使用sub()方法來進(jìn)行查詢和替換,sub方法的格式為:

sub(replacement, string[, count=0])

replacement是被替換成的文本

string是需要被替換的文本

count是一個(gè)可選參數(shù),指最大被替換的數(shù)量

例子:

import re
p = re.compile('(blue|white|red)')
print(p.sub('colour','blue socks and red shoes'))
print(p.sub('colour','blue socks and red shoes', count=1))

輸出:

colour socks and colour shoes
colour socks and red shoes

subn()方法執(zhí)行的效果跟sub()一樣,不過它會(huì)返回一個(gè)二維數(shù)組,包括替換后的新的字符串和總共替換的數(shù)量

例如:

import re
p = re.compile('(blue|white|red)')
print(p.subn('colour','blue socks and red shoes'))
print(p.subn('colour','blue socks and red shoes', count=1))

輸出

('colour socks and colour shoes', 2)
('colour socks and red shoes', 1)

補(bǔ)充:Python中正則表達(dá)式sub函數(shù)用法總結(jié)

正則表達(dá)式一個(gè)比較常見的用途是找到所有模式匹配的字符串并用不同的字符串來替換它們。sub方法提供一個(gè)替換值,可以是字符串或函數(shù),和一個(gè)要被處理的字符串。

1、這里的sub方法,是被編譯成‘RegexObject'實(shí)例后的實(shí)例的方法

Sub(replacement,string[,count =0 ])

1)返回的字符串是在字符串中用RE最左邊不重復(fù)的匹配來替換。如果模式?jīng)]有被發(fā)現(xiàn),字符將沒有被改變的返回。

2)可選參數(shù)count是模式匹配后替換的最大次數(shù);count必須是非負(fù)整數(shù)。缺省值是0表示替換所有的匹配。

例子:

2、模塊級函數(shù):sub方法

注:這些函數(shù)(包括sub函數(shù))使用RE字符串作為第一個(gè)參數(shù),而后面的參數(shù)與相應(yīng)的“RegexObject”方法的參數(shù)相同,返回要么是None,要么是一個(gè)‘MatchObject'實(shí)例。

(實(shí)際sub返回的是字符串,,兩者說法不一致,以實(shí)際為準(zhǔn))

Re.sub的作用在于:使用給定的替換內(nèi)容將匹配模式的子字符串(最左端并且非重疊的子字符串)替換掉

3、作為替換的組號

在2的例子中,只是把一個(gè)字符串用其他的內(nèi)容替換掉了。用replace這個(gè)字符串方法能輕松達(dá)到同樣的效果。而正則表達(dá)式允許以更靈活的方式進(jìn)行搜索,同時(shí)它們也允許進(jìn)行功能更強(qiáng)大的替換。

見證re.sub強(qiáng)大功能的最簡單方式就是在替換字符串中使用組號。在替換內(nèi)容中以‘\\n'型式出現(xiàn)的任何轉(zhuǎn)義序列都會(huì)被模式中與組n匹配的字符串替換掉。

例如,假設(shè)要把‘*something*'用‘<em>someting</em>'替換掉,前者是在普通文本文檔(比如Email)中進(jìn)行強(qiáng)調(diào)的常用方法,而后者則是相應(yīng)的HTML代碼(用于網(wǎng)頁)

這里把所有的* *含的字符串都替換掉了。剛開始我以為只替換*world*。記一筆。

4、作為替換的函數(shù)

Re.sub函數(shù)可以將一個(gè)函數(shù)作為第二個(gè)參數(shù)(替換式)。函數(shù)會(huì)被匹配的對象調(diào)用,并且它的返回值會(huì)被插入到文本中。(但從例子2看來,是函數(shù)的唯一參數(shù)是被匹配的對象)

例子1:

test.txt內(nèi)容:

結(jié)果:

例子2

(該例子在《python基礎(chǔ)教程》20章)

Sub方法不直接調(diào)用callback,而是返回一個(gè)新的函數(shù),這個(gè)函數(shù)會(huì)被當(dāng)成re.sub的替換函數(shù)來使用(這就是采用一個(gè)匹配的對象作為唯一參數(shù)的原因)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • 拒絕盜圖!教你怎么用python給圖片加水印

    拒絕盜圖!教你怎么用python給圖片加水印

    你是不是擔(dān)心,辛辛苦苦做的圖表被盜用? 試試用python加上你的專屬水印,讓盜版無所遁形. 只需幾行代碼,比用ps軟件操作更簡單、更快捷,需要的朋友可以參考下
    2021-06-06
  • 詳解Selenium 元素定位和WebDriver常用方法

    詳解Selenium 元素定位和WebDriver常用方法

    這篇文章主要介紹了詳解Selenium 元素定位和WebDriver常用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • python opencv實(shí)現(xiàn)切變換 不裁減圖片

    python opencv實(shí)現(xiàn)切變換 不裁減圖片

    這篇文章主要為大家詳細(xì)介紹了python opencv實(shí)現(xiàn)切變換,不裁減圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • python的類class定義及其初始化方式

    python的類class定義及其初始化方式

    這篇文章主要介紹了python的類class定義及其初始化方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python改變對象的字符串顯示的方法

    Python改變對象的字符串顯示的方法

    這篇文章主要介紹了Python改變對象的字符串顯示的方法,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • python中字典和列表的相互嵌套問題詳解

    python中字典和列表的相互嵌套問題詳解

    這篇文章主要為大家詳細(xì)介紹了python中字典和列表相互嵌套的問題,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 基于Python中request請求得到的response的屬性問題

    基于Python中request請求得到的response的屬性問題

    這篇文章主要介紹了基于Python中request請求得到的response的屬性問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python實(shí)戰(zhàn)整活之聊天機(jī)器人

    Python實(shí)戰(zhàn)整活之聊天機(jī)器人

    這篇文章主要介紹了Python實(shí)戰(zhàn)整活之聊天機(jī)器人,文中有非常詳細(xì)的代碼示例,對正在學(xué)習(xí)python的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • Python中GPU計(jì)算的庫pycuda的使用

    Python中GPU計(jì)算的庫pycuda的使用

    本文主要介紹了Python中GPU計(jì)算的庫pycuda的使用,詳細(xì)介紹了PyCUDA 庫的特性、用法,并通過豐富的示例代碼展示其在實(shí)際項(xiàng)目中的應(yīng)用,感興趣的可以了解一下
    2024-05-05
  • Python實(shí)現(xiàn)圖算法、堆操作和并查集代碼實(shí)例

    Python實(shí)現(xiàn)圖算法、堆操作和并查集代碼實(shí)例

    這篇文章主要介紹了Python實(shí)現(xiàn)圖算法、堆操作和并查集代碼實(shí)例,圖算法、堆操作和并查集是計(jì)算機(jī)科學(xué)中常用的數(shù)據(jù)結(jié)構(gòu)和算法,它們在解決各種實(shí)際問題中具有重要的應(yīng)用價(jià)值,需要的朋友可以參考下
    2023-08-08

最新評論