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

网易 自助网站建设手机软件商店下载安装

网易 自助网站建设,手机软件商店下载安装,南阳网站seo报价,墨鱼wordpress正则表达式 正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为regex、regexp或RE),是计算机科学的一个概念。以下是对正则表达式的详细介绍: 一、定义与作用 正则表达式是一种文…

正则表达式 

正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为regex、regexp或RE),是计算机科学的一个概念。以下是对正则表达式的详细介绍:

一、定义与作用

正则表达式是一种文本模式,同时也是一种强大的文本模式匹配工具,用于对字符串进行搜索、替换、匹配和验证等操作。它使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。

二、构成与语法

正则表达式由普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”)组成。这些元字符在正则表达式中具有特殊意义,可以用来规定其前导字符在目标对象中的出现模式。以下是一些常见的元字符及其用法:

  • 普通字符‌:包括大小写字母、数字、标点符号及一些其他符号。

  • 转义字符‌:\,用于取消特殊符号的含义,例如 !、$等。

  • 边界符‌:

    • ^:匹配字符串开始的位置,例如 ^a、^the。
    • $:匹配字符串结束的位置,例如word:匹配字符串结束的位置,例如word、^$匹配空行。
  • 匹配任意字符‌:. 匹配除换行符之外的任意的一个字符,例如 go.d、g..d。

  • 量词‌:用于设定某个模式重复次数。

    • *:匹配前面的子表达式0次或者多次,例如 good、go.*d。
    • +:匹配前面的子表达式1次以上,例如 go+d,将匹配至少一个o,如god、good、goood等(注意,在某些工具或语言中,如egrep、awk,+ 可能不需要转义)。
    • ?:匹配前面的子表达式0次或者1次,例如 go?d,将匹配gd或god(在某些工具或语言中,? 可能不需要转义)。
    • {n}:匹配前面的子表达式n次,例如 go{2}d、'[0-9]{2}'匹配两位数字。
    • {n,}:匹配前面的子表达式不少于n次,例如 go{2,}d、'[0-9]{2,}'匹配两位及两位以上数字。
    • {n,m}:匹配前面的子表达式n到m次,例如 go{2,3}d、'[0-9]{2,3}'匹配两位到三位数字。
  • 字符集合‌:[],匹配方括号中的任意一个字符。

    • [list]:匹配list列表中的一个字符,例如 go[ola]d,[abc]、[a-z]、[a-z0-9]、[0-9]匹配任意一位数字。
    • [^list]:匹配任意非list列表中的一个字符,例如 [^0-9]、[^A-Z0-9]、[^a-z]匹配任意一位非小写字母。

例子:"^[A-Za-z0-9]+([_\.][A-Za-z0-9]+)*@([A-Za-z0-9\-]+\.)+[A-Za-z]{2,6}$"

这个例子^标识符表示开始,$表示结束,[A-Za-z0-9]+表示匹配多次中括号表示的范围,[_\.]表示匹配_或.但由于.在正则表达式中有匹配除换行符之外的任意的一个字符的功能,所以前面添加\取消它的特殊含义,[A-Za-z0-9\-]中由于-有特殊含义所以使用了\取消特殊含义,[A-Za-z]{2,6}表示匹配中括号中的字符范围至少2次至多6次

QRegExp

一、功能特点

  1. 字符串匹配‌:QRegExp可以验证字符串是否符合指定的正则表达式模式。
  2. 字符串搜索‌:它可以在更长的文本中查找子串的匹配位置。
  3. 文本替换‌:QRegExp能够替换符合正则表达式的字符串片段。
  4. 捕获组‌:通过正则表达式中的括号,可以定义捕获组来提取匹配的子表达式内容。

二、使用方法

  1. 创建QRegExp对象‌:

    • 可以直接使用正则表达式字符串来创建QRegExp对象,例如:QRegExp regExp("a*b"); 这会匹配任何数量的'a'后面跟着一个'b'。
  2. 设置和获取正则表达式‌:

    • 使用setPattern()方法可以设置一个新的正则表达式。
    • 使用pattern()方法可以获取当前的正则表达式。
  3. 匹配操作‌:

    • 使用exactMatch()方法可以检查一个字符串是否与正则表达式完全匹配。
    • 使用indexIn()方法可以在文本中搜索匹配项,并返回匹配项的位置。
    • cap()方法用于提取捕获组的内容。
  4. 替换操作‌:

    • 虽然QRegExp本身不直接提供替换功能,但可以与QString的replace()方法结合使用来实现替换操作。例如:QString replaced = text.replace(QRegExp("ain"), "ane"); 这会将文本中的"ain"替换为"ane"。
  5. 与QLineEdit结合使用‌:

    • QRegExpValidator是一个验证器,可以与QLineEdit等输入字段结合使用,以限制输入格式。例如:QRegExp regExp("^\\d{3}-\\d{2}-\\d{4}$"); 这会匹配格式XXX-XX-XXXX的字符串,并将其作为QLineEdit的输入验证器。

例如:

QRegExp a("^[A-Za-z0-9]+([_\.][A-Za-z0-9]+)*@([A-Za-z0-9\-]+\.)+[A-Za-z]{2,6}$");
bool b = a.exactMatch(ui->accountEdit->text());

 这一段代码创建了一个存放正则表达式的变量a,随后使用a.exactMatch函数判断text()的内容是否符合并用布尔值b接收

注意

使用CMake构造的项目中,可能需要在CMakeLists.txt下手动添加如下指令,否则#include<QRegExp>时检测不到:

find_package(Qt6 REQUIRED COMPONENTS Core5Compat) 
target_link_libraries(mytarget PRIVATE Qt6::Core5Compat)//mytarget修改为项目名称 

 

http://www.dtcms.com/wzjs/534049.html

相关文章:

  • 玩具 东莞网站建设 技术支持广州seo优化代理
  • 广州专业做网站建设建设ipv6网站
  • 福州电子商务网站网站定位要点 有哪些方面
  • 网站的交互设计有什么拉新充场app推广平台
  • 南通建设局网站唐山网站怎么做seo
  • 扬中网站建设门户报价未备案的网站
  • 西安专业做网站网站建设会出现的问题
  • 云网站制作的流程wordpress充值功能
  • 网站建设服务合同书标准版网络公司代理
  • 网站建设与维护的重要性网站销售流程
  • 网站翻新后seo怎么做网站到期忘记续费
  • 帝国网站整站迁移学网页设计报班
  • 淘宝网站都是怎么做的吗品牌创意网站建设
  • 纯flash网站欣赏wordpress进不到后台
  • 西宁手机网站建设如何自己做网站并开发软件
  • 安徽建设干部学校网站aspnet网站开发的书籍
  • 安庆市住房和城乡建设局网站cn.wordpress.org
  • 做er图的网站宠物网站怎么做
  • 陕西省建设厅执业资格注册中心网站免备案的网站空间
  • 网站后台更新 前台看不到免费设计logo的app
  • 建设网站实训报告网站产品简介
  • 快速搭建网站的工具连连电商网站开发公司
  • 漫画网站做任务给金币社交网站开发项目计划报告
  • 多久可以做网站公司企业网页
  • 友情网站w网站怎么做
  • 教育机构网站是百度知道app
  • 长岭网站优化公司双重预防机制信息化平台
  • 上海建筑安全协会网站深圳建网站公司哪家好
  • 网站建设实训的意义阜城县网站建设
  • 乐陵网站制作公司做网站费用会计处理