当前位置: 首页 > news >正文

正则表达式 工作案例

目录

  • 一. `(正常|異常)終了`
  • 二. `|` 和 `\` 的使用
  • 三. `(awt|qch|suica)への.*?要求`
  • 四. `メール(アドレス)?|mail`
  • 五. `決済(取消)?のトランザクションIDを払い出しました`
  • 六. `c2(h|k)[a-z]{2}\d{2}a`
  • 七. `^/.*?(?=:)`
  • 八. `(?<=(gz|log):)\d+(-\d+)?(?=\s)`
  • 九. `^\d+(-\d+)?(?=\s)`
  • 十. `(?<=\/)(\.20[2-3][0-9].{6})`
  • 十一. `(mpl|qch|ang|flv|pud|srp|trt).*?(?=_app)`
  • 十二. `去除重复行`


一. (正常|異常)終了

  • |:用来表示或
  • ():用来分组
異常終了
正常終了
まだ終了

在这里插入图片描述


二. |\ 的使用

\[ERROR\]|\[WARN\]|エラー|Exception

  • |:用来表示或
  • \:用来转义
[ERROR]発生
[WARN]発生
エラー発生
Exception発生

在这里插入图片描述


三. (awt|qch|suica)への.*?要求

  • .*:表示任意数量的字符
  • ?:表示非贪婪模式
awtへの要求をしています。
qchへの非同期要求をしています。
suicaへのテスト要求をしています。

在这里插入图片描述


四. メール(アドレス)?|mail

  • (アドレス)?:表示アドレス为可选项
メール=1355@163.com
メールアドレス=1355@163.com
mail=1355@163.com

在这里插入图片描述


五. 決済(取消)?のトランザクションIDを払い出しました

  • (取消)?:表示取消为可选项
決済のトランザクションIDを払い出しました
決済取消のトランザクションIDを払い出しました

在这里插入图片描述


六. c2(h|k)[a-z]{2}\d{2}a

  • [a-z]{2}:2位数的小写英文字母
  • \d{2}:2位数的数字
c2hak02a
c2kbt01a
c2hap09a

在这里插入图片描述


七. ^/.*?(?=:)

  • ^/.*?:以/开头的任意位内容,其中?表示非贪婪模式
  • (?=:):表示任意位内容只截止到:处,:在此处只是起到辅助匹配作用,并不匹配到结果中
/logback/c2hak02a/tomcat/current/logs/spl/.2024033109mpl_test1_app.log:03210429-47789	045
/logback/c2kbt01a/tomcat/current/logs/spl/.2024033109qch_test2_app.log.tar.gz:03210154-24389	569
/logback/c2hap09a/tomcat/current/logs/spl/.2024033109ang_bis01_app.log:06334561	478

在这里插入图片描述


八. (?<=(gz|log):)\d+(-\d+)?(?=\s)

  • \d+:任意位数字
  • (-\d+)?-47889这种带着-的数字是可选项
  • (?<=(gz|log):)\d+(-\d+)?的前面是gz:或者是log:,只是起到辅助匹配作用,并不匹配到结果中
  • (?=\s)\d+(-\d+)?的后面是空格,只是起到辅助匹配作用,并不匹配到结果中

在这里插入图片描述


九. ^\d+(-\d+)?(?=\s)

  • ^\d+(-\d+)?:数字开头的内容,(-\d+)?是为了匹配带-的数字
  • (?=\s)^\d+(-\d+)?的后面是空格,只是起到辅助匹配作用,并不匹配到结果中
2323	SEQIN mmm isuuePayId=5768awe uuid=woenoo; jmw_state=success method=paypay info=ppp
03210154-24389	SEQOUT COST=45726
2345	SEQIN mmm isuuePayId=34895ry uuid=;ljkler jmw_state=faile method=alipay info=ddd
03210154-28329	SEQOUT COST=34855

在这里插入图片描述


十. (?<=\/)(\.20[2-3][0-9].{6})

  • (\.20[2-3][0-9].{6}):用来匹配.年月日.{6}表示匹配6位任意的内容,此处指代MMDD
  • (?<=\/):表示.前面的/,只是起到辅助匹配作用,并不匹配到结果中

在这里插入图片描述


十一. (mpl|qch|ang|flv|pud|srp|trt).*?(?=_app)

  • 表示匹配mplqchang开头到_app为止的任意内容
  • .*?中的?表示非贪婪模式
  • (?=_app):到_app为止的任意内容,只是起到辅助匹配作用,并不匹配到结果中

在这里插入图片描述


十二. 去除重复行

  • (^.+\n)\1:标记两行一模一样的内容
  • (^.+\n)\1替换为\1,可以去除重复行

在这里插入图片描述

相关文章:

  • docker 常用配置
  • python 画折线统计图
  • Linux下的I/O复用技术之epoll
  • 模型 隐含前提
  • MyBatis缓存配置的完整示例,包含一级缓存、二级缓存、自定义缓存策略等核心场景,并附详细注释和总结表格
  • Python部署Docker报错:curl: (56) Recv failure: Connection reset by peer
  • 强化学习:高级策略梯度理论与优化方法
  • leetcode110 平衡二叉树
  • 在QML中获取当前时间、IP和位置(基于网络请求)
  • Simple-BEV论文解析
  • module.noParse(跳过指定文件的依赖解析)
  • [贪心_8] 跳跃游戏 | 单调递增的数字 | 坏了的计算器
  • GitOps进化:深入探讨 Argo CD 及其对持续部署的影响
  • 青少年编程与数学 02-018 C++数据结构与算法 12课题、递归
  • 多模态大语言模型arxiv论文略读(四十二)
  • Dify框架面试内容整理-Dify如何实现模型调用与管理?
  • 【OSG学习笔记】Day 10: 字体与文字渲染(osgText)
  • 两台没有网络的电脑如何通过网线共享传输文件
  • Compose笔记(十八)--rememberLazyListState
  • 【第11节 嵌入式软件的组成】
  • 驻美国使馆发言人就美方希就关税问题与中方对话答记者问
  • 临沂文旅集团被诉侵权,原告每年三百余起类案
  • 人民日报整版聚焦第十个“中国航天日”:星辰大海,再启新程
  • 上海常务副市长:持续提升跨境投融资便利化水平,稳步扩大金融领域的制度型开放
  • 五一节,和人民照相馆一起找回“拍照”的仪式感
  • 书信里的宋人|忠奸难辨的夏竦