溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python編程中如何使用strip()函數(shù)的正則表達(dá)式

發(fā)布時(shí)間:2021-05-24 11:20:58 來源:億速云 閱讀:136 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹了Python編程中如何使用strip()函數(shù)的正則表達(dá)式,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

題目如下:

  • 寫一個(gè)函數(shù),它接受一個(gè)字符串,做的事情和strip()字符串方法一樣。如果只傳入要去除的字符串(原字符串),沒有其他參數(shù),那么就從該字符串首尾去除空白字符串。否則,函數(shù)第二個(gè)參數(shù)指定的字符串將從該字符串中去除


思路如下:

  • 補(bǔ)充:字符串的str.strip()方法,去除字符串首尾指定的字符,只能去除頭尾兩邊,不能去除中間

  • 程序需要做以下的事情:
     接受一個(gè)字符串和要去除的字符
     調(diào)用函數(shù)去除字符串指定頭尾字符
     返回去除后的字符串

  • 代碼需要做以下的事情:
     def定義一個(gè)函數(shù),接受兩個(gè)參數(shù)
     創(chuàng)建正則表達(dá)式對象
     返回Regex.sub()替換后的字符串
     input()輸入字符串
     print()打印輸出函數(shù)返回對象

  • 重點(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("請輸入原字符串:")
inputStr2 = input("請輸入要去除的字符:")
if inputStr2 == '': #若第二參數(shù)是否為空,更改為' *',方便正則表達(dá)式進(jìn)行模式匹配
  inputStr2 = ' *'
print("去除后的字符串為:",fakeStrip(inputStr1,inputStr2))

輸出結(jié)果如下:

  • 去除字符串
     Python編程中如何使用strip()函數(shù)的正則表達(dá)式

  • 去除空格
     Python編程中如何使用strip()函數(shù)的正則表達(dá)式

python的五大特點(diǎn)是什么

python的五大特點(diǎn):1.簡單易學(xué),開發(fā)程序時(shí),專注的是解決問題,而不是搞明白語言本身。2.面向?qū)ο?,與其他主要的語言如C++和Java相比, Python以一種非常強(qiáng)大又簡單的方式實(shí)現(xiàn)面向?qū)ο缶幊獭?.可移植性,Python程序無需修改就可以在各種平臺(tái)上運(yùn)行。4.解釋性,Python語言寫的程序不需要編譯成二進(jìn)制代碼,可以直接從源代碼運(yùn)行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“Python編程中如何使用strip()函數(shù)的正則表達(dá)式”這篇文章對大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI