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 相关文章推荐
pycharm 使用心得(五)断点调试
Jun 06 Python
python django事务transaction源码分析详解
Mar 17 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
Jul 24 Python
解决Pycharm无法import自己安装的第三方module问题
May 18 Python
Python数据分析matplotlib设置多个子图的间距方法
Aug 03 Python
python版本五子棋的实现代码
Dec 11 Python
Python根据成绩分析系统浅析
Feb 11 Python
python-Web-flask-视图内容和模板知识点西宁街
Aug 23 Python
浅谈Django+Gunicorn+Nginx部署之路
Sep 11 Python
Django多进程滚动日志问题解决方案
Dec 17 Python
Python用5行代码实现批量抠图的示例代码
Apr 14 Python
Python+SeaTable实现计算两个日期间的工作日天数
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
ThinkPHP自动完成中使用函数与回调方法实例
2014/11/29 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
2019/02/25 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
2019/05/31 PHP
表单提交验证类
2006/07/14 Javascript
javascript实现仿银行密码输入框效果的代码
2007/12/13 Javascript
JavaScript不刷新实现浏览器的前进后退功能
2014/11/05 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
2015/04/07 Javascript
javascript引用类型之时间Date和数组Array
2015/08/27 Javascript
基于jQuery实现Div窗口震动特效代码-代码简单
2015/08/28 Javascript
JavaScript文档碎片操作实例分析
2015/12/12 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
浅谈Node.js轻量级Web框架Express4.x使用指南
2017/05/03 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
js实现可以点击收缩或张开的悬浮窗
2017/09/18 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
2018/04/28 Javascript
nodeJs爬虫的技术点总结
2018/05/13 NodeJs
vue服务端渲染页面缓存和组件缓存的实例详解
2018/09/18 Javascript
详解Axios 如何取消已发送的请求
2018/10/20 Javascript
uploadify插件实现多个图片上传并预览
2019/09/30 Javascript
OpenLayer学习之自定义测量控件
2020/09/28 Javascript
[06:48]DOTA2-DPC中国联赛2月26日Recap集锦
2021/03/11 DOTA
Python有序字典简单实现方法示例
2017/09/28 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
使用Python监视指定目录下文件变更的方法
2018/10/15 Python
解决pycharm安装第三方库失败的问题
2020/05/09 Python
在django admin中配置搜索域是一个外键时的处理方法
2020/05/20 Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
2020/10/15 Python
Python调用ffmpeg开源视频处理库,批量处理视频
2020/11/16 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
HTML5新表单元素_动力节点Java学院整理
2017/07/12 HTML / CSS
微软新西兰官方网站:Microsoft New Zealand
2018/08/17 全球购物
采购部部门职责
2013/12/15 职场文书
药剂专业自荐信范文
2014/04/16 职场文书
小学生评语集锦
2014/04/18 职场文书
小学综治宣传月活动总结
2014/07/02 职场文书
高三语文复习计划
2015/01/19 职场文书