zoukankan      html  css  js  c++  java
  • Python模拟删除字符串两边的空白

    目标:
      1.使用string模块的whitespace
      2.删除左边、右边以及两边的空白

    代码如下:

    [root@localhost python]# cat rmspace.py

    #!/usr/bin/env python
    #coding:utf8
    """
    使用字符串删除左右两端的空白。
    """
    
    from string import whitespace
    
    #删除左边的空白
    def lrmsps(astr):
        for i in xrange(len(astr)):
            if astr[i] not in whitespace:
                return astr[i:]
        #当输入的全是空白字符时,返回空
        return ''
    
    #删除右边的空白,从列表的右边开始判断
    def rrmsps(astr):
        for i in reversed(xrange(len(astr))):
            if astr[i] not in whitespace:
                return astr[:(i+1)]
        return ''
    
    #删除左右两边的空白
    def rmsps(astr):
        return rrmsps(lrmsps(astr))
    
    
    
    if __name__ == '__main__':
        hi = '    hello,world.      '
        print '删除左边空白:|%s|' % lrmsps(hi)
        print '删除右边空白:|%s|' % rrmsps(hi)
        print '删除两边空白:|%s|' % rmsps(hi)

    2.运行代码,测试效果

    [root@localhost python]# python rmspace.py
    删除左边空白:|hello,world.      |
    删除右边空白:|    hello,world.|
    删除两边空白:|hello,world.|

    *附录:使用list的方式模拟删除字符串左右两边的空白

    代码如下:

    #!/usr/bin/env python
    #coding:utf8
    """
    使用列表的方式删除左右两端的空白。
    """
    from string import whitespace
    
    def lrmsps(astr):
        result = list(astr)
        for i in xrange(len(result)):
            if result[0] not in whitespace:
                break
            result.pop(0)
        return ''.join(result)
    
    
    def rrmsps(astr):
        result = list(astr)
        for i in xrange(len(result)):
            if result[-1] not in whitespace:
                break
            result.pop()
        return ''.join(result)
    
    def rmsps(astr):
        return rrmsps(lrmsps(astr))
    
    
    if __name__ == '__main__':
        hi = '     hello,world.    '
        print '|%s|' % lrmsps(hi)
        print '|%s|' % rrmsps(hi)
        print '|%s|' % rmsps(hi)
  • 相关阅读:
    javaweb(十四)——JSP原理
    JavaWeb(十三)——使用Session防止表单重复提交
    javaweb(十一)——使用Cookie进行会话管理
    javaweb(十)——HttpServletRequest对象(一)
    javaweb(八)——HttpServletResponse对象(二)
    javaweb(七)——HttpServletResponse对象(一)
    《锋利的jQruery》读书笔记
    rem单位在手机网站中的使用
    JavaScript权威指南读书笔记
    dreamwaver cs6 主题配色方案
  • 原文地址:https://www.cnblogs.com/xkops/p/6244198.html
Copyright © 2011-2022 走看看