Python编程快速上手——strip()函数的正则表达式实现方法分析
作者:授我以驴 发布时间:2022-07-24 07:08:59
本文实例讲述了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))
输出结果如下:
去除字符串
去除空格
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述对大家Python程序设计有所帮助。
来源:https://blog.csdn.net/one_Salted_FishGG/article/details/89365431


猜你喜欢
- Python有两个用于相等比较的运算符,“is”和“==”(等于)。在这篇文章中,我将教你们两者之间的区别,以及通过几个简单地例子说明什么时
- CACHE_BACKEND参数每个缓存后端都可能使用参数。 它们在CACHE_BACKEND设置中以查询字符串形式给出。 有效参数如下:&n
- 目前定时的操作有:一、Html页面的定时刷新(Refresh--刷新 ) 1,Refresh (刷新) 代码使用说明 说明:让网页多长时间(
- 有时候,我们需要用到 * ,比如在爬虫的时候,但是得到了IP之后,可能不知道怎么验证这些IP是不是有效的,这时候我们可以使用Python携
- Pycharm是当前进行python开发,尤其是Django开发最好的IDE。GitHub是程序员的圣地,几乎人人都在用。本文假设你对pyc
- 前言网站登录的时候我们常常会看到随机的验证码需要输入后台验证,如图:现在我们来实现在Django中通过自定制插件来实现随机验证check_c
- 本文实例为大家分享了python sklearn分类算法模型调用的具体代码,供大家参考,具体内容如下实现对'NB',&nbs
- 文章摘要:其实这里casperjs与python没有直接关系,主要依赖casperjs调用phantomjs webkit获取html文件内
- 本文实例为大家分享了python合并同类型excel表格的具体代码,供大家参考,具体内容如下python脚本如下,验证有效。#!/usr/b
- 过程名:catch(str) 使用方法: 代码如下:on error resume next '你的代码,如数据库连接 call c
- 本文实例讲述了Python实现字典排序、按照list中字典的某个key排序的方法。分享给大家供大家参考,具体如下:1.给字典按照value按
- 在SQL中系统已为我们提供了很非常丰富的函数:例:聚会函数avg, sum,count,max,min 日期函数:Day,Mon
- 由于网络带宽以及某些WAP服务器DECK传输的限制,所以DECK越小越好,最好不要超过1.2K。如果你的需求很复杂,最好分成几个DECK来完
- 细节汇总函数的形参列表可以是多个,返回值列表也可以是多个形参列表和返回值列表的数据类型,可以是值类型、也可以是引用类型函数的命名遵循标识符命
- 安装环境:CentOS7 64位,MySQL5.71、配置YUM源在MySQL官网中下载YUM源rpm安装包:http://dev.mysq
- 本文实例讲述了python计算时间差的方法。分享给大家供大家参考。具体分析如下:1、问题:给定你两个日期,如何计算这两个日期之间间隔几天,几
- 如下所示:原因1:版本不对,如用环境变量设置的python3.7路径,那么用的就是3.7的pip.exe安装了包。却用的是2.7的pytho
- 本文主要讲如何不依赖TenserFlow等高级API实现一个简单的神经网络来做分类,所有的代码都在下面;在构造的数据(通过程序构造)上做了验
- 本文是在上篇文章Python中的type和object,做的补充,希望大家喜欢。这篇博客主要描述Python的新风格对象(new-style
- 一、介绍1、SqlLocalDb全称:SQL Server Express LocalDb。简化SQL Server的本地数据库。SqlLo