首页 > 编程语言 >python 正则处理字符串,使用函数

python 正则处理字符串,使用函数

时间:2023-04-14 15:38:28浏览次数:45  
标签:group re python --- print 正则 字符串 matched


"""
在正则截取的字符子串基础上,处理字符串

Python 的re模块提供了re.sub用于替换字符串中的匹配项。
语法:
re.sub(pattern, repl, string, count=0, flags=0)
参数:
pattern : 正则中的模式字符串。
repl : 替换的字符串,也可为一个函数。
string : 要被查找替换的原始字符串。
count : 模式匹配后替换的最大次数,默认 0 表示替换所有的匹配。
flags : 编译时用的匹配模式,数字形式。
"""
import re

phone = "2004-959-559 --- 这是一个电话号码"

def double(matched):
    # print(matched.group(0)) # --- 这是一个电话号码
    # print(matched.group(1))  #这是一个电话号码
    value = matched.group(1)
    return value * 2

def double_with_str(matched):
    print(matched.group('substr')) # 这是一个电话号码
    value = matched.group('substr')
    return value * 2

# 删除注释
num = re.sub(r'--- (.+)$', double, phone) # 使用数组下标,定位字串
num2 = re.sub(r'--- (?P<substr>.+)$', double_with_str, phone) # 使用命名组,定位字串

print("num",num)
print("num2",num2)

标签:group,re,python,---,print,正则,字符串,matched
From: https://blog.51cto.com/u_14011026/6190391

相关文章

  • python3 静态方法,类方法和普通方法
    classMyClass:@staticmethoddefstatic_method():print('静态方法')@classmethoddefclass_method(cls):print('类方法')#普通方法defnormal_method(self):print('普通方法')MyClass.stati......
  • python3 多继承时,父类有相同一个函数的选择
    classPeople:name=''age=0__weight=0def__init__(self,name,age,weight):print("People初始化")self.age=ageself.name=nameself.__weight=weightprint("People......
  • python3 各种方式连接mysql数据库
    print("python连接mysql数据库")#importmysql.connector"""#1使用mysql-connector连接mysqlimportmysql.connectormydb=mysql.connector.connect(host="localhost",user="clever",passwd="1881301"......
  • 列举说明Python同Java及C++的不同之处
    首先是C++C++是在C语言的基础上发展起来的,他包含了C语言的所有内容。同时,也引入了面向对象的概念。优点:1、他包含了C语言的内容,包括指针,使得C++在执行效率上特别的高效。2、引入面向对象的概念,使得开发效率提高。3、提供了很多的库,具有较好的封装性和移植性(代码)。缺点:1、C++比较难......
  • 对比Python中的列表、元组、字典、集合、字符串等之间异同
    1.数据类型列表、元组、字典、集合、字符串均属于python3的标准数据类型。字符串和元组属于不可变数据,即创建后不可修改。列表、字典、集合属于可变数据,即创建后可以修改元素。2.创建有元素的对象3.创建没有元素的对象列表使用eval()或list()或中括号[]进行创建,元素之间使用逗号分......
  • python + QXDM5高通平台通过自动化截取log方法及代码
    转自python+QXDM5高通平台通过自动化截取log方法及代码准备工作:1.安装QXDM52.配置adb环境变量3.使用python3以上4.完成代码如下1importsys2importtime3importos45ifsys.platform.startswith("linux"):6sys.path.append('/opt/qcom/QXD......
  • JavaScript 之 JSON [4] parse()和stringify() -JSON字符串和JavaScript对象数据之间
    JavaScript之JSON[4]parse()和stringify()-JSON字符串和JavaScript对象数据之间的相互转换1、JSON.parse()JSON.parse()方法用于将一个JSON字符串解析为一个JavaScript对象。JSON字符串必须使用双引号包括属性名和字符串值,不能使用单引号或无引号。语法:JSON.parse(text,r......
  • window10安装python开发环境
    一、下载安装python二、下载安装pychram三、pychram激活 一、下载安装python1.下载pythonpython官网是  https://www.python.org/ 移动鼠标到downloads,然后点击windows,就可以看到关于windows的相关安装版本。左边StableReleases是稳定版......
  • js 查找字符串中指定字符 模糊查询 不区分大小写
    varstr="helloworld!hellocoder!";//查找‘HELLO’是否存在,找不到返回nullvarreg=newRegExp('HELLO','i');varisHas=str.match(reg);console.log(isHas);//打印结果:["hello",index:0,input:"hellow......
  • python 之 session鉴权的处理
    一、session鉴权的处理1.requests的会话对象就像一个浏览器一样,它会在同一个会话中自动处理cookie信息,不需要写任何额外的代码。importrequests  session=requests.Session()#理解为就是一个浏览器  type(session)  requests.sessions.Sess......