python 字符串操作

去空格及特殊符號

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

複製字符串

#strcpy(sStr1,sStr2)sStr1 = 'strcpy'sStr2 = sStr1
sStr1 = 'strcpy2'print sStr2

連接字符串

#strcat(sStr1,sStr2)sStr1 = 'strcat'sStr2 = 'append'sStr1 += sStr2print 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 sStr2print 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 = 3sStr1 += sStr2[0:n]print sStr1

字符串指定長度比較

#strncmp(sStr1,sStr2,n)sStr1 = '12345'sStr2 = '123bc'n = 3print cmp(sStr1[0:n],sStr2[0:n])

複製指定長度的字符

#strncpy(sStr1,sStr2,n)sStr1 = ''sStr2 = '12345'n = 3sStr1 = sStr2[0:n]print sStr1

將字符串前n個字符替換爲指定的字符

#strnset(sStr1,ch,n)sStr1 = '12345'ch = 'r'n = 3sStr1 = n * ch + sStr1[3:]print sStr1

掃描字符串


#strpbrk(sStr1,sStr2)sStr1 = 'cekjgdklab'sStr2 = 'gka'nPos = -1for c in sStr1:    if c in sStr2:
        nPos = sStr1.index(c)        breakprint 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)

PHP 中 addslashes 的實現


def addslashes(s):
    d = {'"':'\\"', "'":"\\'", "\0":"\\\0", "\\":"\\\\"}    return ''.join(d.get(c, c) for c in s)
 
s = "John 'Johny' Doe (a.k.a. \"Super Joe\")\\\0"print sprint 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] #逆序截取,具體啥意思沒搞明白?



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章