1. 程式人生 > >常用python字符串處理

常用python字符串處理

換行符 包括 string 圖片 col replace logs import line

1、字符串合並和連接

加號合並               

技術分享圖片

join方法合並

技術分享圖片

2、相乘和切片

line=‘*‘*30

print(line)

>>******************************

切片:

consequence[start_index:end_index:step]

表示第一個元素,正索引位置默認為0;負索引位置默認為-len(consequence)

end_index表示最後一個元素對象,正索引位置默認為len(consequence)-1;負索引位置默認為-1

print str[0:3]#截取第一位到第三位的字符
print str[:]#
截取字符串的全部字符 print str[6:]#截取第七個字符到結尾 print str[:-3]#截取從頭開始到倒數第三個字符之前的不包括第三個 print str[2]#截取第三個字符 print str[-1]#截取倒數第一個字符 print str[::-1]#創造一個與原字符串順序相反的字符串 print str[-3:-1]#截取倒數第三位到倒數第一位之前的字符 不包括倒數第一位字符 print str[-3:]截取倒數第三位到結尾 print str[:-5:-3]逆序截取

三字符串的分割

普通的分割,用split,不支持多個分隔

技術分享圖片

復雜的分隔

r表示不轉義,分隔符可以是;或者,或者空格後面跟0個多個額外的空格,然後按照這個模式去分割

技術分享圖片

split(string[, maxsplit]) | re.split(pattern, string[, maxsplit]):

按照能夠匹配的子串將string分割後返回列表。maxsplit用於指定最大分割次數,不指定將全部分割。

import re

p = re.compile(r‘\d+‘)
print p.split(‘one1two2three3four4‘)

### output ###
# [‘one‘, ‘two‘, ‘three‘, ‘four‘,

4、字符串的開頭和結尾的處理

例如查找一個文件名以什麽開頭或以什麽結尾

filename=‘trace.h‘

print(filename.endwith(‘h‘))

>>True

print(filenam.startwith(‘trace‘))

>>True

5、字符串的查找和匹配

一般查找:

在長字符串裏面查找字符串,會返回字符串所在字符串的索引,否則返回-1

str.find(‘xxxx‘)

復雜的匹配:

使用import re

6、字符串的替換

普通的替換:replace

str.replace(‘被替換者‘,‘替換著‘)

復雜替換

使用正則匹配的re.sub

7、字符串去掉一些字符

去除空格 對文本處理的時候比如從文件讀取一行,然後去除每一行的兩側空格,tab或者換行符

line=‘ Congratulations, you guessed it.

print(line.strip())

>>Congratulations, you guessed it.

註意:字符串內部的空格不能去掉,若要去掉需要用re模塊

復雜的文本清理,可以利用str.translate,

先構建一個轉換表,table是一個翻譯表,表示把‘t‘‘o‘轉成大寫的‘T‘ ‘O‘,

然後在old_str裏面去掉‘12345‘,然後剩下的字符串再經過table翻譯

技術分享圖片


常用python字符串處理