Python編程快速上手——strip()函數(shù)的正則表達(dá)式實(shí)現(xiàn)方法分析
本文實(shí)例講述了Python strip()函數(shù)的正則表達(dá)式實(shí)現(xiàn)方法。分享給大家供大家參考,具體如下:
題目如下:
- 寫(xiě)一個(gè)函數(shù),它接受一個(gè)字符串,做的事情和strip()字符串方法一樣。如果只傳入要去除的字符串(原字符串),沒(méi)有其他參數(shù),那么就從該字符串首尾去除空白字符串。否則,函數(shù)第二個(gè)參數(shù)指定的字符串將從該字符串中去除
思路如下:
- 補(bǔ)充:字符串的str.strip()方法,去除字符串首尾指定的字符,只能去除頭尾兩邊,不能去除中間
- 程序需要做以下的事情:
接受一個(gè)字符串和要去除的字符
調(diào)用函數(shù)去除字符串指定頭尾字符
返回去除后的字符串 - 代碼需要做以下的事情:
def定義一個(gè)函數(shù),接受兩個(gè)參數(shù)
創(chuàng)建正則表達(dá)式對(duì)象
返回Regex.sub()替換后的字符串
input()輸入字符串
print()打印輸出函數(shù)返回對(duì)象 - 重點(diǎn)分析:
根據(jù)strip()方法特性,去除頭尾特定字符需要用到“ ^ ”和“ $ ”符號(hào)。
由于不能事先知道去除哪些字符,因此在正則表達(dá)式中需要用到format格式字符串。
需要用 | “管道"符號(hào)在^{0}和{0}$之間插入,匹配多個(gè)分組。
sub()方法返回替換后的字符串,因此sub()方法的第一個(gè)參數(shù)為”"空。
*默認(rèn)去除字符串首尾空白字符,我的方法是在input()輸入?yún)?shù)二時(shí),若input() == “”,則重新賦值參數(shù)二為" "空格-星號(hào),星號(hào)匹配0次或多次分組,能夠匹配到所有空格。
代碼如下:
import re def fakeStrip(longStr,str ): stripRex = re.compile(r'^{0}|{0}$'.format(str)) return stripRex.sub('',longStr) inputStr1 = input("請(qǐng)輸入原字符串:") inputStr2 = input("請(qǐng)輸入要去除的字符:") if inputStr2 == '': #若第二參數(shù)是否為空,更改為' *',方便正則表達(dá)式進(jìn)行模式匹配 inputStr2 = ' *' print("去除后的字符串為:",fakeStrip(inputStr1,inputStr2))
輸出結(jié)果如下:
- 去除字符串
- 去除空格
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測(cè)試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python正則表達(dá)式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python實(shí)現(xiàn)約瑟夫環(huán)問(wèn)題的方法
這篇文章主要介紹了Python實(shí)現(xiàn)約瑟夫環(huán)問(wèn)題的方法,詳細(xì)分析了約瑟夫環(huán)問(wèn)題的描述、原理與解決方法,需要的朋友可以參考下2016-05-05Python數(shù)據(jù)讀寫(xiě)之Python讀寫(xiě)CSV文件
這篇文章主要介紹了Python數(shù)據(jù)讀寫(xiě)之Python讀寫(xiě)CSV文件,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-06-06Python爬蟲(chóng)庫(kù)BeautifulSoup的介紹與簡(jiǎn)單使用實(shí)例
BeautifulSoup是一個(gè)可以從HTML或XML文件中提取數(shù)據(jù)的Python庫(kù),本文為大家介紹下Python爬蟲(chóng)庫(kù)BeautifulSoup的介紹與簡(jiǎn)單使用實(shí)例其中包括了,BeautifulSoup解析HTML,BeautifulSoup獲取內(nèi)容,BeautifulSoup節(jié)點(diǎn)操作,BeautifulSoup獲取CSS屬性等實(shí)例2020-01-01Python中的getter與setter及deleter使用示例講解
這篇文章主要介紹了Python中的getter與setter及deleter使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-01-01書(shū)寫(xiě)Python代碼的一種更優(yōu)雅方式(推薦!)
Python是一個(gè)高層次的結(jié)合了解釋性、編譯性、互動(dòng)性和面向?qū)ο蟮哪_本語(yǔ)言,下面這篇文章主要給大家介紹了關(guān)于書(shū)寫(xiě)Python代碼的一種更優(yōu)雅方式,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-10-10基于python框架Scrapy爬取自己的博客內(nèi)容過(guò)程詳解
這篇文章主要介紹了基于python框架Scrapy爬取自己的博客內(nèi)容過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08在python3中使用shuffle函數(shù)要注意的地方
今天小編就為大家分享一篇在python3中使用shuffle函數(shù)要注意的地方,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-02-02