正则表达式阅读理解

((max|min)\\s*\\([^\\)]*(,[^\\)]*)*\\)|[a-zA-Z][a-zA-Z0-9]*(_[a-zA-Z][a-zA-Z0-9]*)?(\\*|'|%)?|[0-9]+(\\.[0-9]+)?|\\([^\\)]*(,[^\\)]*)*\\))(\\s*[-+*/%]\\s*([a-zA-Z][a-zA-Z0-9]*(_[a-zA-Z][a-zA-Z0-9]*)?(\\*|'|%)?|[0-9]+(\\.[0-9]+)?|\\([^\\)]*(,[^\\)]*)*\\)?|((max|min)\\s*\\([^\\)]*(,[^\\)]*)*\\)))*)*

 1.max:匹配max

2.max|min  : 匹配max或者min
3.(max|min)\\s  : 匹配max或者min,然后匹配任意一个空白字符
4.(max|min)\\s*  : ... 匹配0个或1个或多个空白字符
5.[a-zA-Z] : 匹配1个字符,a-z或A-Z中的字符
6.[a-zA-Z][a-zA-Z0-9]* :第一个字符:a-z或A-Z之间

后面匹配0或1个或多个字符,字符可以是a-z或A-z或0-9间的字符.

正则表达式 – 语法 | 菜鸟教程 (runoob.com)

7.字符\:

将下一个字符标记为一个特殊字符,或一个原义字符。。。

'n':匹配字符"n"

'\n"匹配一个换行符

"\\"匹配"\"

"\("匹配"("

8.实际写的时候

    QRegExp exp("\\(");
    QLineEdit edit;
    edit.setValidator(new QRegExpValidator(exp));
    edit.show();

匹配一个字符:'('

9.

QRegExp exp("\\([^\\)]");

匹配两个字符:第一个必须是'('

第二个不可以是')'

10.

QRegExp exp("\\([^\\)]*");

第一个必须是'('

后面任意个字符(0,1,2,,,,):不可以是')'

11.

,[^\\)]* 

第一个字符是','

后面任意个字符,不可以是')' 

12.

\\([^\\)]*(,[^\\)]*)*\\)

第一个字符:必须是'('

后面任意个字符,不可以是')'

 再输入字符','

再输入任意个字符。不可以是')'

红色字体部分可以重复任意次

再输入一个‘)’

结束

13.

(max|min)\\s*\\([^\\)]*(,[^\\)]*)*\\)
    // (max|min)
    //  \\s*
    //  \\(
    //  [^\\)]*
    //  (,[^\\)]*)
    //  *
    //  \\)

 

14.

    [a-zA-Z][a-zA-Z0-9]*(_[a-zA-Z][a-zA-Z0-9]*)?

 

15.

(\\*|'|%)?|[0-9]+(\\.[0-9]+)?|\\([^\\)]*(,[^\\)]*)*\\)
    //  (\\*|'|%)?
    //  |
    //  [0-9]+
    //  (\\.[0-9]+)?
    //  |
    //  \\(
    //  [^\\)]*
    //  (,[^\\)]*)
    //  *
    //  \\)

 

16.

"((max|min)\\s*\\([^\\)]*(,[^\\)]*)*\\)|[a-zA-Z][a-zA-Z0-9]*(_[a-zA-Z][a-zA-Z0-9]*)?(\\*|'|%)?|[0-9]+(\\.[0-9]+)?|\\([^\\)]*(,[^\\)]*)*\\))(\\s*[-+*/%]\\s*([a-zA-Z][a-zA-Z0-9]*(_[a-zA-Z][a-zA-Z0-9]*)?(\\*|'|%)?|[0-9]+(\\.[0-9]+)?|\\([^\\)]*(,[^\\)]*)*\\)?|((max|min)\\s*\\([^\\)]*(,[^\\)]*)*\\)))*)*"
    QString str1="(max|min)\\s*\\([^\\)]*(,[^\\)]*)*\\)";
    QString str2="[a-zA-Z][a-zA-Z0-9]*(_[a-zA-Z][a-zA-Z0-9]*)?";
    QString str3="(\\*|'|%)?|[0-9]+(\\.[0-9]+)?|\\([^\\)]*(,[^\\)]*)*\\)";
    QString content="("+str1+"|"+str2+str3+")(\\s*[-+*/%]\\s*("+str2+str3+"?|("+str1+"))*)*";

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/745617.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

论文辅导 | 基于贝叶斯优化-卷积神经网络-双向长短期记忆神经网络的锂电池健康状态评估

辅导文章 模型描述 准确估计电池健康状态是设备稳定运行的关键。针对当前健康状态研究中容量难以直接测量、估计模型调参费时等问题,提出基于多健康特征的贝叶斯优化(BO)算法优化卷积神经网络(CNN)与双向长短期记忆&a…

使用 Vanna 生成准确的 SQL 查询:工作原理和性能分析

Vanna工作原理 从本质上讲,Vanna 是一个 Python 包,它使用检索增强功能来帮助您使用 LLM 为数据库生成准确的 SQL 查询。 Vanna 的工作分为两个简单的步骤 - 在您的数据上训练 RAG“模型”,然后提出问题,这些问题将返回可设置为在您的数据库上自动运行的 SQL 查询。 vn.t…

一文讲解:如何理解数字化?数字化的三大本质!

在当今时代,一些企业对数字化概念与本质进行了专门的诠释,部分认为数字化是基于大数据、云计算、物联网、5G等数字技术来实现企业的管理创新,且这一进程的前提是建立在信息化基础之上。然而,也有一些专家持有不同观点,…

Apache HBase概述(图文并茂~)

HBase概述 1. Why we need HBase ? 在大数据时代来临之前,我们通常依赖传统的关系型数据库(如RDBMS)来处理数据存储和管理。然而,随着数据量的急剧增长和数据结构的多样化,传统数据库系统开始显露出其局限性…

照片变漫画怎么弄?这5个照片变漫画方法超简单

在艺术和社交融合的现在,将照片转换为漫画风格已经成为一种流行趋势。 无论是为了创造个性化的头像,还是制作有趣的社交媒体帖子,拥有一款能够将照片转换为漫画的软件将极大地丰富你的创意表达。 下面,本文将介绍几款能够实现这…

eNSP学习——SNMP基础配置

目录 原理概述 实验目的 实验内容 实验拓扑 实验编址 实验步骤 1、基本配置 2、开启Agent服务 3、配置SNMP版本 4、配置NMS管理权限 5、配置向SNMP Agent输出Trap 信息 主要命令 原理概述 随着网络规模的日益发展,现有的网络中,设备数量日益…

Charles抓包工具系列文章(六)-- Block List 和 Allow List (黑白名单)

一、背景 Allow List 是白名单,请求的接口如果在白名单里,就被允许。 Block List 是黑名单,请求的接口如果在黑名单里,就被拒绝。 黑白名单是可以一起启用的,优先黑名单。 二、白名单 Allow List 1、新增白名单接口…

2024国内外音频转换器大盘点,盘点音乐剪辑的7个有效方法!

当遇到不支持的音乐文件时,您可能就会想要拥有一款优秀的音频转换器。当您想减小大量音乐文件以节省设备存储空间时,它也可以很好地帮上忙。如果您正在寻找这么一款音频转换器,那么,请不要错过这篇文章。一款顶尖的音频转换器不仅…

网络安全入门教程(非常详细)从零基础入门到精通,看完这一篇你就是网络安全高手了。

关于我 我算是“入行”不久的一个新人安全工作者,为什么是引号呢,因为我是个“半个野路子”出身。早在13年的时候,我在初中时期就已经在90sec、wooyun等社区一直学习、报告漏洞。后来由于升学的压力,我逐渐淡出了安全圈子&#x…

[vscode] 自定义log快捷生成代码

1、进入设置页面:文件>首选项>用户代码片段>选择设置的语言。 2. 关于代码段显示位置的调整设置 文件>首选项>设置,搜索代码段或snippetSuggestions,修改为”top”; 参考: vscode自定义log快捷生成代码

铊的危害以及工业废水除铊的工艺

铊是一种有毒的重金属,具有强烈的神经毒性,同时对肝肾也有损害作用。铊中毒分为急性中毒和慢性中毒,急性中毒一般在接触12-24h内发病,早期表现为食欲减退、恶心、呕吐、腹痛、腹泻等消化道症状,数天后才出现明显的神经…

酷开系统丨酷开科技AI赋能数字大屏,开启智能家居新纪元

在当今数字化时代,人工智能(AI)技术的崛起无疑为科技领域带来了革命性的变化。酷开科技,正以其独特的"AI数字大屏"战略,将创新理念转化为现实,引领行业发展新潮流。 酷开科技的智能电视操作系统…

基于前馈神经网络的姓氏分类任务(基础)

1、认识前馈神经网络 What is it 图1-1 前馈神经网络结构 人们大多使用多层感知机(英语:Multilayer Perceptron,缩写:MLP)作为前馈神经网络的代名词,但是除了MLP之外,卷积神经网络&#xff08…

AI智能体的炒作与现实:GPT-4都撑不起,现实任务成功率不到15%

AI 智能体的宣传很好,现实不太妙。 随着大语言模型的不断进化与自我革新,性能、准确度、稳定性都有了大幅的提升,这已经被各个基准问题集验证过了。 但是,对于现有版本的 LLM 来说,它们的综合能力似乎并不能完全支撑得…

Java基础的重点知识-04-封装

文章目录 面向对象思想封装 面向对象思想 在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算机事件的设计思想。 面向对象思想的三大基本特征: 封装、继承、多态 1.类和对象 类是对象的抽象&#xff…

初阶 《操作符详解》11. 下标引用、函数调用和结构成员

11. 下标引用、函数调用和结构成员 1. [ ] 下标引用操作符 操作数:一个数组名 一个索引值 int arr[10];//创建数组 arr[9] 10;//实用下标引用操作符,[ ]的两个操作数是arr和9arr[7]-->*(arr7)-->*(7arr)-->7[arr] 7[arr] 9; //编译器不会…

软考《信息系统运行管理员》-1.1信息系统概述

1.1信息系统概述 信息的含义 信息是人们关心的事情的消息或知识 信息的分类 按产生信息的客体性质分: 自然信息:声、光、热、电等生物信息:遗传信息,生物体内、生物种群内的信息交流机器信息:自动控制系统社会信息…

flask与vue实现通过websocket通信

在一些情况下,我们需要实现前后端之间的时刻监听,本文是一篇工具文档,用于解决前后端之间使用websocket交互。 一. Flask的相关配置 1. 下载相关依赖库 如果还没有配置flask的话,需要先安装flask,同时为解决跨域问题&#xff0…

C++学习全教程(day1:变量和数据类型、运算符、流行控制语句)

目录 一、变量和数据类型 1、变量 2、标识符 3、作用域 4、常量 5、数据类型 1.基本数据类型-整型 2.char类型 3.bool类型 4.浮点类型 5.字面值常量 二、运算符 1、算数运算符 2、赋值运算符 3、复合赋值运算符 4、关系和逻辑运算 1.关系运算符 -------结果是…

SAP系统中如何用事务码图形视图寻找MD04增强开发实施点

在之前发布的文章中,介绍了善用事务码的图形视图以观察事务的执行流程以及如何在MD04中实施增强以改变生产订单的显示顺序。本文结合两者,介绍一下如何利用事务码的图形视图找到增强开发的实施点。 在事务码中输入SE93,进入图形视图&#xf…