随笔:正则表达式(二)

【小黄碎碎念】如何解析和替换字符串中的 Markdown 文本?正则表达式与 flexmark-java 库 本周,小黄基于 SSM 对博客系统进行了迭代升级,然而,在博客的摘要信息中,形如 # 这样的 Markdown 标签也一并展示在了博客摘要信息中,该如何解决呢?(1)使用正则表达式对博客正文中的所有 markdown 标签进行匹配,然后使用空字符进行替换;(2)使用 flexmark-java库来解析和转换 Markdown 文本。 阅读详情

随笔:正则表达式(二)

一、方法封装:

import re


def regular_expression(value, start_value='', end_value='', match_type=0):
    """
    :param value: 待测文本
    :param start_value: 开始的字段,注意特殊符号,需要转换
    :param end_value: 结束的字段,注意特殊符号,需要转换
    :param match_type:匹配模式,0表示开头结尾不包含start_value、end_value
    :return: 返回正则截取的结果
    """
    # 去除空格和换行符
    text = re.sub('\s+', '', value)
    if start_value == '' and end_value != '':
        """
        到end_value截止,不包含end_value
        """
        pattern = re.compile(r"(.*)%s" % end_value)
        result = re.search(pattern, text).group(1)
    elif start_value != '' and end_value == '':
        """
        从start_value开始,不包含start_value
        """
        pattern = re.compile(r'%s(.*)' % start_value)
        result = re.search(pattern, text).group(1)
    elif start_value != '' and end_value != '' and match_type == 0:
        """
        从start_value开始,不包含start_value;到end_value截止,不包含end_value
        """
        pattern = start_value + '(.*?)' + end_value
        result = re.search(pattern, text).group(1)
    else:
        """
        从start_value开始,到end_value截止,包含start_value、end_value
        """
        pattern = re.compile(r"%s+(.*?)+%s" % (start_value, end_value))
        result = pattern.search(value).group()
    return result

二、示例

value = '1tagtask_ogdata_c2...'
start_value = '1'
end_value = '2'
s = regular_expression(value, start_value, end_value)
print(s)
s1 = regular_expression(value, end_value=end_value)
print(s1)
s2 = regular_expression(value, start_value=start_value)
print(s2)
s3 = regular_expression(value, start_value, end_value, match_type=1)
print(s3)

三、结果

tagtask_ogdata_c
1tagtask_ogdata_c
tagtask_ogdata_c2...
1tagtask_ogdata_c2
Python综合知识随笔 Python学习随笔:使用xlwings读取和操作Execl文件 博客地址:https://blog.youkuaiyun.com/LaoYuanPython 老猿Python博客文章目录:https://blog.youkuaiyun.com/LaoYuanPython/article/details/98245036 ... 阅读详情

相关推荐

Materials Studio多层聚合物建模全流程:从Build Layers到LAMMPS data文件导出避坑指南

本文详细解析了使用Materials Studio构建多层聚合物模型并导出为LAMMPS data文件的全流程。重点剖析了Build Layers工具的核心逻辑、真空层处理技巧,并提供了解决导出过程中Z轴坐标偏移问题的实战方案,特别是如何利用msi2lmp工具的-shift参数进行精准校正,确保模型在LAMMPS中模拟的稳定性和准确性。

hhh00的博客 913

Linux系统学习随笔(二):BASH和正则表达式

  原本确实是没有仔细学的欲望,但是鸟哥原话意思就是“这俩就是Linux基础当中的基础,虽然最难,但学成之后一定大有帮助,就和任督二脉一样。”那还有什么好说的呢,搞它! 目录一、BASH1.Shell的变量(1)变量取用与设置(2)一些重要的变量(3)变量的键盘读取、阵列与宣告(4)变量内容的删除、取代与替换二、正则表达式三、Shell Script 一、BASH   Shell根据发展者的不同产生了许多的版本。所谓BASH,其实就是Linux所使用的Shell版本“Bourne Again SHell”的

qq_38940316的博客 827

RapidScada在windows下的安装(详细)

1.下载地址:RapidScada官网 2.版本说明 有Linux版本和Windows版本,看自己的需求下载,推荐下载最新稳定版本。 3.系统要求 4.安装前的准备(windows10) 首先打开Windows功能: 先关闭 Microsoft .NET Framework3.5的 Windows Communication Foundation 子组件。如下图: Microsoft .NET Framework配置按下图勾选: iis安装的功能: 5.安装 解压..

m0_51275803的博客 4262

Python随笔——正则表达式

文章目录正则表达式--随笔什么是正则表达式使用正则表达式match 正则表达式–随笔 什么是正则表达式 正则表达式(regular expression)是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 正则表达式有自己独立的操作处理引擎,可以匹配任何的编程语言。 我个人理解,正则表达式本...

锲而舍之,朽木不折。锲而不舍,金石可镂。 396

Photoshop免费获取指南:官方试用与开源替代方案详解

图像处理软件是数字内容创作的核心工具,其工作原理基于像素编辑、图层叠加与算法滤镜。这类软件的技术价值在于为设计师、摄影师和内容创作者提供了强大的视觉表达能力,广泛应用于平面设计、UI/UX、摄影后期及社交媒体内容制作等场景。在众多工具中,Adobe Photoshop以其全面的功能和行业标准地位备受关注。对于希望免费体验或使用的用户,存在合法且安全的途径。其中,Adobe官方提供的7天免费试用版允许用户在安全环境下体验完整功能,而开源替代方案如GIMP则提供了长期免费的强大图像编辑能力。理解这些合法获取方式

cigang4063的博客 522

影刀RPA验证码识别避坑指南:官方指令、Python ddddocr与第三方图鉴怎么选?

本文深度对比了影刀RPA验证码识别的三种方案:官方AI指令、Python ddddocr开源库和第三方图鉴服务。从识别率、成本、维护性等维度分析各方案优劣,提供实战选型建议和优化技巧,帮助技术决策者在自动化流程中高效解决验证码识别难题。

weixin_30790841的博客 470

[随笔] 正则表达式详解

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。 例如: runoo+b,可以匹配 runoob、runooob、runoooooob 等,+ 号代表前面的字符必须至少出现一次(1次或多次)。 runoo*b,可以匹配 runob、runoo...

1.02^365的成长裂变 3万+

14.4kW大功率母线变换器设计:LLC+矩阵变压器+GaN实战解析

在数据中心供电架构中,隔离母线变换器将高压直流母线转换为48V低压母线,是大功率供电链路的核心环节。随着功率密度与效率要求不断攀升,传统移相全桥与普通LLC方案已难以满足300A级输出需求。基于LLC/CLLC谐振拓扑,结合矩阵变压器与GaN功率器件,成为新一代高性能母线变换器的主流技术路线。矩阵变压器将大功率磁性元件拆分为多个小单元,配合原边串联副边并联结构,有效降低绕组损耗并提升功率密度;GaN器件则通过高频软开关进一步压减开关损耗。本文以一台14.4kW样机为例,完整梳理从拓扑选型、谐振参数计算、同步

weixin_28273593的博客 341

正则表达式随笔小记(二)

在我们用正则表达式来匹配字符串的时候,有两种匹配模式,分别为贪婪模式和非贪婪模式。贪婪模式的正则表达式匹配方式是这样的,假如我们有一个字符串"123456789",我们的正则表达式是\d{3,5}的话,贪婪模式模式会尽量去匹配更多的字符,所以最后的匹配结果是"12345"。非贪婪模式则和贪婪模式相反,假如这个字符串还是"123456789",我们的正则表达式是\d{3,5}的话,非贪婪模式模式会尽量

zhangzhetaojj的博客 349

W5500 MACRAW模式实战:在ESP32上抓取并解析原始以太网数据包

本文详细介绍了如何在ESP32开发板上使用W5500芯片的MACRAW模式捕获和解析原始以太网数据包。通过硬件连接指南、代码实现示例和协议解析技巧,帮助开发者深入理解网络通信底层机制,实现网络嗅探和自定义协议开发等高级应用。

weixin_42520573的博客 417

数据工程师——ETL

文章摘要 ETL(数据抽取、转换、加载)是数据处理的核心流程,负责将分散数据源整合为高质量数据。ETL与ELT的主要区别在于转换步骤顺序,分别适用于不同规模数据场景。数据仓库通过ETL从多个数据源集成数据,支持分析决策。维度建模中的事实表记录业务指标,维度表提供上下文信息。缓慢变化维度(SCD)处理随时间变化的维度数据,常见类型包括直接覆盖型、新增版本型等。数据清洗解决数据缺失、重复、错误等问题,确保数据质量。数据血缘记录数据流转路径,便于问题排查和影响分析。常用ETL工具如Kettle通过转换和作业实现数

weixin_45729710的博客 1558

正则表达式随笔

正则表达式教程 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。 正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。 1.为什么使用正则表达式? 典型的搜索和替换操作要求您提供与预期的搜索结果匹配的确切文本。虽然这种技术对于对静态文本执行简单搜索和替换任务可能已经足够了,...

denghuochang1530的博客 136

2026华为OD机考新系统真题 + 双机位C卷 + 往年真题 - 题库目录分值说明 + 考点说明+在线OJ

2026年4月1日起,华为OD机试正式切换至新系统模式!采用力扣模式,无需自己写输入! 难度大幅度降低。正在备考华为OD机试的同学,优先刷新系统机试真题,可大幅提升通过率。 新系统考题考点与旧版一致,无需重新适应。本专栏所有算法题均配有详细思路解析,并提供C语言、JS、C++、Python、Go、Java多语言源码实现。订阅后私信即可开通专属OJ刷题权限,高效备考一次上岸!

算法大师! 45万+

随笔--正则表达式进阶

1.避免转义字符引起的问题 使用原字符串定义正则表达式 p = r'正则表达式' []中用^取反 \s 匹配到的空格都有[\t\n\f\v\r] 2. 分组的进阶 分组(捕获分组:只捕获分组中内容,其他只要匹配即可) group()返回匹配的字符串 groups()以元组的形式返回符合所有组中匹配的字符串,一个组为一个字符串 group(n) 第n个分组中匹配到的内容...

lgq139392008的博客 238

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

PHP-正则表达式随笔

正则表达式     正则用来查找指定的字符串、匹配、替换指定的字符串     1、什么是正则表达式         正则表达式是一组描述字符串特征的模式,用于匹配一组字符串。         这种模式本身也是字符串只不过有一些规则和语法。     2、正则表达式用来解决字符串的搜索、替换、分隔     3、在PHP中学习正则表达式学习什么?      

谷子的博客 817

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Java正则表达式 随笔

Java正则表达式 随笔 模式匹配 1 |String str = " *在此处写你匹配的字符串* "; 2 |String regEx= " *在此处写匹配模试* "; 3 |Pattern r = Pattern.compile(regEx); 4 |Matcher m = r.matcher(str); 5 |if (m.find( )) { 6 | System.out.print

阿伊的小窝~ 608

随笔-正则表达式

前端对于字符串的校验经常性的需要用到正则表达式这个工具,通过字符串自身调用的方法可以进行复杂的字符串匹配: replace(): 用于在字符串中用一些字符替换一个与正则表达式匹配的子串-string.replace(正则,替换的字符) search: 检索与正则表达式相匹配的子字符串-string.search(正则) split: 用于把一个字符串分割成字符串数组-string.split(正则,返回数组最大长度-可选) match: 找到一个或多个正则表达式的匹配,返回的是值不是位置-string.ma

木玄客的博客 206

随笔: Python日志解析-正则表达式

# 日志解析 class Log_parse(object): ''' 正则表达式 ''' def regular_expression(self, file, start_value, end_value): text = re.sub('\s+', '', file) pattern = ''+start_value+'(.*?)'+end_value match = re.search(pattern, text)

caodingzheng的博客 685

python接口自动化---参数关联接口后传(详解)

大家对前边的自动化新建任务之后,接着对这个新建任务操作了解之后,希望带小伙伴进一步巩固胜利的果实,夯实基础。因此再在沙场实例演练一下博客园的相关接口。我们用自动化发随笔之后,要想接着对这篇随笔操作,不用说就需要用参数关联了,发随笔之后会有一个随笔的 id,获取到这个 id,继续操作传这个随笔 id 就可以了(博客园的登录机制已经变了,不能用账号和密码登录了,这里用 cookie 登录)

软件测试技术资源分享官 1062

利用正则表达式获取博客园随笔(一)

晚上起先和朋友们跑步去了,然后回来之后洗了个澡,打开VS新建项目发现都会弹出一个问题 然后就去找万能的度娘了,http://bbs.youkuaiyun.com/topics/390514964?page=1#post-395015041 25楼真相,卸载掉那2个补丁就可以了,不过在卸载第一个补丁的时候你需要停止他指出的那个服务。 我当初刚开始接触正则是去年公司主管让我去学,然后发了个网址给我:htt

萌萌的It人 www.itmmd.com 1834
上一篇: Python基础学习:Python连接mysql方法封装
下一篇: python基础:冒泡排序,从大到小排序和从小到大排序
caodingzheng
博客等级 码龄7年 18粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值