python--字符串操作(删除,替换)

来源:互联网 发布:淘宝客优惠券网站系统 编辑:程序博客网 时间:2024/04/27 17:29



示例:

替换字符串开头和结尾处的空格


1. [代码][Python]代码     跳至 [1] [全屏预览]

view source
print?
01# -*- coding: utf-8 -*-
02 
03#替换字符串开头的空格
04i=0
05while s[i].isspace():
06    i=i+1
07else:
08    ss=s[0:i].replace(' ','*')
09    s=ss+s[i:]
10    print s
11 
12#替换字符串结尾的空格
13i=-1
14while  s[i].isspace():
15    i=i-1
16else:
17    ss=s[i+1:].replace(' ','*')#list 用负数进行索引时,[a:-1],-1仍然是取不到的
18    s=s[:i+1]+ss
19    print s

  • 1# -* -coding:UTF-8 -*-
    2= '   test string   '
    3print (len(s) - len(s.lstrip()))*'*' + s.strip() + (len(s) -len(s.rstrip()))*'*'
    4 
    5***test string***

转自:http://www.oschina.net/code/snippet_121336_3349


strip

函数原型

声明:s为字符串,rm为要删除的字符序列

s.strip(rm)        删除s字符串中开头、结尾处,位于 rm删除序列的字符

s.lstrip(rm)       删除s字符串中开头处,位于 rm删除序列的字符

s.rstrip(rm)      删除s字符串中结尾处,位于 rm删除序列的字符

注意:

1. 当rm为空时,默认删除空白符(包括'\n', '\r',  '\t',  ' ')

例如:

复制代码代码如下:

>>> a = '     123'
>>> a.strip()
'123'
>>> a='\t\tabc'
'abc'
>>> a = 'sdff\r\n'
>>> a.strip()
'sdff'

2.这里的rm删除序列是只要边(开头或结尾)上的字符在删除序列内,就删除掉。

例如 :

复制代码代码如下:

>>> a = '123abc'
>>> a.strip('21')
'3abc'   结果是一样的
>>> a.strip('12')
'3abc'

Python中的strip用于去除字符串的首尾字符,同理,lstrip用于去除左边的字符,rstrip用于去除右边的字符。

这三个函数都可传入一个参数,指定要去除的首尾字符。

需要注意的是,传入的是一个字符数组,编译器去除两端所有相应的字符,直到没有匹配的字符,比如:

theString= 'saaaay yes no yaaaass'
print theString.strip('say')

theString依次被去除首尾在['s','a','y']数组内的字符,直到字符在不数组内。所以,输出的结果为: 
yes no 
比较简单吧,lstrip和rstrip原理是一样的。

注意:当没有传入参数时,是默认去除首尾空格的。 

theString= 'saaaay yes no yaaaass'
print theString.strip('say')
print theString.strip('say ')#say后面有空格
print theString.lstrip('say')
print theString.rstrip('say')

运行结果: 

yes no 
es no 
yes no yaaaass 
saaaay yes no


转自:http://www.cnblogs.com/pylemon/archive/2011/05/18/2050179.html


原创粉丝点击