Python编程快速上手——strip()函数的正则表达式实现方法分析


Posted in Python onFebruary 29, 2020

本文实例讲述了Python strip()函数的正则表达式实现方法。分享给大家供大家参考,具体如下:

题目如下:

  • 写一个函数,它接受一个字符串,做的事情和strip()字符串方法一样。如果只传入要去除的字符串(原字符串),没有其他参数,那么就从该字符串首尾去除空白字符串。否则,函数第二个参数指定的字符串将从该字符串中去除

思路如下:

  • 补充:字符串的str.strip()方法,去除字符串首尾指定的字符,只能去除头尾两边,不能去除中间
  • 程序需要做以下的事情:
    接受一个字符串和要去除的字符
    调用函数去除字符串指定头尾字符
    返回去除后的字符串
  • 代码需要做以下的事情:
    def定义一个函数,接受两个参数
    创建正则表达式对象
    返回Regex.sub()替换后的字符串
    input()输入字符串
    print()打印输出函数返回对象
  • 重点分析:
    根据strip()方法特性,去除头尾特定字符需要用到“ ^ ”和“ $ ”符号。
    由于不能事先知道去除哪些字符,因此在正则表达式中需要用到format格式字符串。
    需要用 | “管道"符号在^{0}和{0}$之间插入,匹配多个分组。
    sub()方法返回替换后的字符串,因此sub()方法的第一个参数为”"空。

    *默认去除字符串首尾空白字符,我的方法是在input()输入参数二时,若input() == “”,则重新赋值参数二为" "空格-星号,星号匹配0次或多次分组,能够匹配到所有空格。

代码如下:

import re

def fakeStrip(longStr,str ):
    stripRex = re.compile(r'^{0}|{0}$'.format(str)) 
    return stripRex.sub('',longStr)

inputStr1 = input("请输入原字符串:")
inputStr2 = input("请输入要去除的字符:")
if inputStr2 == '': #若第二参数是否为空,更改为' *',方便正则表达式进行模式匹配
  inputStr2 = ' *'
print("去除后的字符串为:",fakeStrip(inputStr1,inputStr2))

输出结果如下:

  • 去除字符串
    Python编程快速上手——strip()函数的正则表达式实现方法分析
  • 去除空格
    Python编程快速上手——strip()函数的正则表达式实现方法分析
Python 相关文章推荐
Python实例之wxpython中Frame使用方法
Jun 09 Python
Python实现在Linux系统下更改当前进程运行用户
Feb 04 Python
低版本中Python除法运算小技巧
Apr 05 Python
Django migrations 默认目录修改的方法教程
Sep 28 Python
python中从for循环延申到推导式的具体使用
Nov 29 Python
pyinstaller将含有多个py文件的python程序做成exe
Apr 29 Python
关于matplotlib-legend 位置属性 loc 使用说明
May 16 Python
解决Python安装cryptography报错问题
Sep 03 Python
python 绘制正态曲线的示例
Sep 24 Python
详解Open Folder as PyCharm Project怎么添加的方法
Dec 29 Python
十个Python自动化常用操作,即拿即用
May 10 Python
Python可视化神器pyecharts之绘制箱形图
Jul 07 Python
python通用读取vcf文件的类(复制粘贴即可用)
Feb 29 #Python
Python编程快速上手——疯狂填词程序实现方法分析
Feb 29 #Python
Python使用GitPython操作Git版本库的方法
Feb 29 #Python
如何使用python代码操作git代码
Feb 29 #Python
使用 Python 遍历目录树的方法
Feb 29 #Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
Feb 29 #Python
在python3中实现查找数组中最接近与某值的元素操作
Feb 29 #Python
You might like
解析php中const与define的应用区别
2013/06/18 PHP
php实现将wav文件转换成图像文件并在页面中显示的方法
2015/04/21 PHP
浅谈PHP命令执行php文件需要注意的问题
2016/12/16 PHP
PHP培训要多少钱
2017/06/06 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
基于jQuery的倒计时插件代码
2011/05/07 Javascript
javascript测试题练习代码
2012/10/10 Javascript
JS 有趣的eval优化输入验证实例代码
2013/09/22 Javascript
jQuery实现“扫码阅读”功能
2015/01/21 Javascript
基于javascript显示当前时间以及倒计时功能
2016/03/18 Javascript
JQuery 两种方法解决刚创建的元素遍历不到的问题
2016/04/13 Javascript
微信小程序教程之本地图片上传(leancloud)实例详解
2016/11/16 Javascript
JavaScript中for循环的几种写法与效率总结
2017/02/03 Javascript
JS实现直接运行html代码的方法
2017/03/13 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
zTree树形菜单交互选项卡效果的实现方法
2017/12/25 Javascript
详解vuex中mapState,mapGetters,mapMutations,mapActions的作用
2018/04/13 Javascript
swiper在vue项目中loop循环轮播失效的解决方法
2018/09/15 Javascript
js 计数排序的实现示例(升级版)
2020/01/12 Javascript
0基础学习前端开发的一些建议
2020/07/14 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
vue 限制input只能输入正数的操作
2020/08/05 Javascript
浅谈python中真正关闭socket的方法
2018/12/18 Python
python实现ip地址查询经纬度定位详解
2019/08/30 Python
如何基于python生成list的所有的子集
2019/11/11 Python
html5中去掉input type date默认样式的方法
2018/09/06 HTML / CSS
你可能不熟练的十个前端HTML5经典面试题
2018/07/03 HTML / CSS
HTML5和以前HTML4的区别整理
2013/10/20 HTML / CSS
荷兰演唱会和体育比赛订票网站:viagogo荷兰
2018/04/08 全球购物
咖啡馆创业计划书
2014/01/26 职场文书
银行办公室岗位职责
2014/03/10 职场文书
好人好事演讲稿
2014/09/01 职场文书
2014年心理健康教育工作总结
2014/12/06 职场文书
Python序列化与反序列化相关知识总结
2021/06/08 Python
详解Python描述符的工作原理
2021/06/11 Python
Python爬虫 简单介绍一下Xpath及使用
2022/04/26 Python