亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python 去除字符串中指定字符串

瀏覽:2日期:2022-08-03 17:14:32

1、背景

最近的項目中,再次踩到Python字符串處理的坑,決定把此次解決方案記錄一下,以勿踩坑。

2、遇到坑

原本字符串:大坪英利國際8號樓88-88號重慶漢喬科技有限公司大坪英利國際8號樓去除最左邊的字符串:大坪英利國際8號樓預期結果:88-88號重慶漢喬科技有限公司大坪英利國際8號樓

自然而然,第一個想到的就是lstrip()函數。

Python中lstrip() 方法用于截掉字符串左邊的空格或指定字符。但實際上結果:

lstrip: -88號重慶漢喬科技有限公司大坪英利國際8號樓

3、找到 lstrip() 坑的真相

函數原型:

def lstrip(self, chars=None): # real signature unknown; restored from __doc__ ''' S.lstrip([chars]) -> str Return a copy of the string S with leading whitespace removed. If chars is given and not None, remove characters in chars instead. ''' return ''

看來 lstrip 方法是 比對字符 并去除,而不是簡單的去除最左邊字符串。那好,再驗證一下:

'重慶重慶師范大學'.lstrip('重慶')

結果:

師范大學

那我想簡單的去除字符串中的首個指定字符串,最好不用 lstrip() 了。于是又想到了split 方法 和 replace 方法……

4、解決方案

4.1、方法1 split

函數原型:

def split(self, instring, maxsplit=_MAX_INT, includeSeparators=False): ''' Generator method to split a string using the given expression as a separator. May be called with optional C{maxsplit} argument, to limit the number of splits; and the optional C{includeSeparators} argument (default=C{False}), if the separating matching text should be included in the split results. Example::punc = oneOf(list('.,;:/-!?')) print(list(punc.split('This, this?, this sentence, is badly punctuated!'))) prints:: [’This’, ’ this’, ’’, ’ this sentence’, ’ is badly punctuated’, ’’] ''' splits = 0 last = 0 for t,s,e in self.scanString(instring, maxMatches=maxsplit): yield instring[last:s] if includeSeparators: yield t[0] last = e yield instring[last:]

4.2、方法2 replace

函數原型:

def replace(self, old, new, count=None): ''' For each element in `self`, return a copy of the string with all occurrences of substring `old` replaced by `new`. See also -------- char.replace ''' return asarray(replace(self, old, new, count))

5、案例

5.1、源代碼

# -*- coding: utf-8 -*-'''Author: ZhenYuShaCreateTime: 2020-2-26Info: 去除字符串中 首個指定字符串'''def run(source, key): tmp_ls = source.lstrip(key) tmp_re = source.replace(key, '', 1) tmp_sp = source.split(key, 1)[1] return tmp_ls, tmp_re, tmp_spif __name__ == ’__main__’: tmp_1, tmp_2, tmp_3 = run('大坪英利國際8號樓88-88號重慶漢喬科技有限公司大坪英利國際8號樓', '大坪英利國際8號樓') print('test_1 lstrip:', tmp_1) print('test_1 replace:', tmp_2) print('test_1 split:', tmp_3) tmp_1, tmp_2, tmp_3 = run('重慶重慶師范大學', '重慶') print('test_2 lstrip:', tmp_1) print('test_2 replace:', tmp_2) print('test_2 split:', tmp_3)

5.2、效果

Python 去除字符串中指定字符串

6、延伸

split 和 replace 可以解決字符串首個指定字符串去除問題, 但去除字符串這個問題不僅僅是去除就完了,還要去判斷是否符合我們的要求。

6.1、看字符串開頭是否是指定字符串

如果需要以指定字符串開頭,要用 startswith 函數來判斷。

6.2、看字符串中是否存在指定字符串

如果不存在指定字符串,直接用 split 和 replace 會直接崩潰的,那就需要 find 函數來查看了。

到此這篇關于Python 去除字符串中指定字符串的文章就介紹到這了,更多相關Python 去除字符串 內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 国产综合久久久久 | 麻豆视传媒短视频网站链接 | 国产成人综合精品一区 | 国产乱人乱精一区二区视频密 | 亚洲黄色在线 | 成年免费大片黄在看 | 欧美人妖猛交 | 亚洲国产色综合有声小说 | 在线网站 看片 网站 | 美国黄色免费网站 | 制服丝袜第一页在线观看 | 99视频在线看观免费 | 亚洲精品色综合区 | 亚洲国产精品国产自在在线 | 亚洲免费黄色 | 黑人操亚洲| 中国xxxx18免费| 国产日韩欧美一区二区三区在线 | 91久久国产露脸国语对白 | 日本成熟老妇乱 | 在线 | 一区二区三区 | 成年性羞羞视频免费观看无限 | 欧美一级特黄刺激大片视频 | 污视频在线观看免费 | 国产永久免费高清动作片www | 欧美日韩视频在线观看高清免费网站 | 老外黑人欧美一级毛片 | 青青草久草在线 | 久草视频在线播放 | 久久国产精品超级碰碰热 | 在线视频观看国产 | 一区二区三区免费视频 www | 麻豆精品久久精品色综合 | 特级全黄一级毛片免费 | 色婷婷香蕉 | 亚洲美女啪啪 | 成人女人a毛片在线看 | 国产成人一区二区三区影院免费 | 久久成人在线观看 | 亚洲成a人片在线播放观看国产 | 婷婷亚洲国产成人精品性色 |