python字串操作

2021-09-07 10:23:45 字數 3740 閱讀 2866

python 字串替換是python操作字串的時候經常會碰到的問題,這裡簡單介紹下字串替換方法。

python 字串替換可以用2種方法實現:

1是用字串本身的方法。

2用正則來替換字串

下面用個例子來實驗下:

a = 'hello word'

我把a字串裡的word替換為python

1用字串本身的replace方法

a.replace('word','python')

輸出的結果是hello python

2用正規表示式來完成替換:

import re

strinfo = re.compile('word')

b = strinfo.sub('python',a)

print b

輸出的結果也是hello python

s.strip().lstrip().rstrip(',')

#strcpy(sstr1,sstr2)

sstr1 = 'strcpy'

sstr2 = sstr1

sstr1 = 'strcpy2'

print sstr2

#strcat(sstr1,sstr2)

sstr1 = 'strcat'

sstr1 += sstr2

print sstr1

#strchr(sstr1,sstr2)

# < 0 為未找到

sstr1 = 'strchr'

sstr2 = 's'

npos = sstr1.index(sstr2)

print npos

#strcmp(sstr1,sstr2)

sstr1 = 'strchr'

sstr2 = 'strch'

print cmp(sstr1,sstr2)

#strspn(sstr1,sstr2)

sstr1 = '12345678'

sstr2 = '456'

#sstr1 and chars both in sstr1 and sstr2

print len(sstr1 and sstr2)

#strlen(sstr1)

sstr1 = 'strlen'

print len(sstr1)

#strlwr(sstr1)

sstr1 = 'jcstrlwr'

sstr1 = sstr1.upper()

#sstr1 = sstr1.lower()

print sstr1

#strncat(sstr1,sstr2,n)

sstr1 = '12345'

sstr2 = 'abcdef'

n = 3

sstr1 += sstr2[0:n]

print sstr1

#strncmp(sstr1,sstr2,n)

sstr1 = '12345'

sstr2 = '123bc'

n = 3

print cmp(sstr1[0:n],sstr2[0:n])

#strncpy(sstr1,sstr2,n)

sstr1 = ''

sstr2 = '12345'

n = 3

sstr1 = sstr2[0:n]

print sstr1

#strnset(sstr1,ch,n)

sstr1 = '12345'

ch = 'r'

n = 3

sstr1 = n * ch + sstr1[3:]

print sstr1

#strpbrk(sstr1,sstr2)

sstr1 = 'cekjgdklab'

sstr2 = 'gka'

npos = -1

for c in sstr1:

if c in sstr2:

npos = sstr1.index(c)

break

print npos

#strrev(sstr1)

sstr1 = 'abcdefg'

sstr1 = sstr1[::-1]

print sstr1

#strstr(sstr1,sstr2)

sstr1 = 'abcdefg'

sstr2 = 'cde'

print sstr1.find(sstr2)

#strtok(sstr1,sstr2)

sstr1 = 'ab,cde,fgh,ijk'

sstr2 = ','

sstr1 = sstr1[sstr1.find(sstr2) + 1:]

print sstr1

#或者s = 'ab,cde,fgh,ijk'

print(s.split(','))

delimiter = ','

mylist = ['brazil', 'russia', 'india', 'china']

print delimiter.join(mylist)

def addslashes(s):

d =

return ''.join(d.get(c, c) for c in s)

s = "john 'johny' doe (a.k.a. \"super joe\")\\\0"

print s

print addslashes(s)

def onlycharnum(s,oth=''):

s2 = s.lower();

fomart = 'abcdefghijklmnopqrstuvwxyz0123456789'

for c in s2:

if not c in fomart:

s = s.replace(c,'');

return s;

print(onlystr("a000 aa-b"))

str = 』0123456789′

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] #逆序擷取,具體啥意思沒搞明白?

黃聰

出處:

Python字串操作

1 複製字串 str2 str1 2 鏈結字串 str abc 3 查詢字串 string.find sub string.index sub string.rfind sub string,rindex sub 4 字串比較 cmp str1,str2 cmp str1.upper str2.up...

Python字串操作

python如何判斷乙個字串只包含數字字元 python 字串比較 下面列出了常用的python實現的字串操作 strcpy sstr1,sstr2 sstr1 strcpy sstr2 sstr1 sstr1 strcpy2 print sstr2 strcat sstr1,sstr2 sstr1...

python字串操作

在 python 有各種各樣的string操作函式。在歷史上string類在 python 中經歷了一段輪迴的歷史。在最開始的時候,python 有乙個專門的string的module,要使用string的方法要先import,但後來由於眾多的 python 使用者的建議,從 python 2.0開...