正则表达式的详解

本文详细介绍了正则表达式的基础知识,包括它的用途、特殊字符、字符类、定位点、限定符、分组构造以及运算符优先级。正则表达式常用于数据验证、搜索和替换,文中通过具体的例子和模式解释了如何使用这些概念。
摘要由CSDN通过智能技术生成

(作者:张滋,撰写时间:2019年4月8日)

首先,我们要理解正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式 通常被用来检索、替换那些符合某个模式(规则)的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。

正则表达式由普通字符以及特殊字符组成的文字模式,也是描述一种字符串匹配的模式,可以将某个字符模式与所搜索的字符串进行匹配。我们可以通过正则表达式,可以测试到字符串内是不是有我们想要的数据。正则表达式主要用来验证、搜索和替换,比如:

  1. 可以测试字符串内的模式。
    例如,可以测试输入字符串,以查看字符串内是否出现电话号码的字符串。这被称为数据验证。 电话号码正则表达式(支持手机号码,3­4位区号,7­8位直播号码,1-4位分机号): ((\d{11})|^((\d{7,8})|(\d{4}|\d{3})(\d{7,8})|(\d{4}|\d{3})­(\d{7,8})­(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})­(\d{4}|\d{3}|\d{2}|\d{1}))$)
  2. 也可以将你需要的数据替换文本。
    可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它。
  3. 当然基于模式匹配从字符串中提取子字符串。
    可以查找文档内或输入域内特定的文本。
  4. 纯文本看起来可能不像是个正则表达式,但它的确是。正则表达式可以包含纯文本(甚至可以只包含纯文本)。当然,像这样使用正则表达式是没什么意义,但把它作为学习正则表达式的起点还是不错的。

正则表达式中的反斜杠字符(\)指示其后跟的字符是特殊字符,或应按原义解释该字符。

所谓特殊字符,就是一些有特殊含义的字符,如上面说的"*.txt"中的*,简单的说就是表示任何字符串的意思。如果要查找文件名中有*的文件,则需要对*进行转义,即在其前加一个\。ls \*.txt。比如:

\ : 在后面带有不识别的转义字符时,与该字符匹配。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值