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

正则表达式简介

文章目录

  • 一、正则表达式简介
  • 总结


一、正则表达式简介

  • 正则表达式

正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。
正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。
正则表达式是繁琐的,但它是强大的,学会之后的应用会让你除了提高效率外,会给你带来绝对的成就感。
许多程序设计语言都支持利用正则表达式进行字符串操作。
实例
从字符串 str 中提取数字部分的内容(匹配一次):

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<script>
var str = "abc123def";
var patt1 = /[0-9]+/;
document.write(str.match(patt1));
</script>

</body>
</html>

在这里插入图片描述在这里插入图片描述

  • 正则表达式 - 简介
    您很可能使用 ? 和 * 通配符来查找硬盘上的文件。? 通配符匹配文件名中的 0 个或 1 个字符,而 * 通配符匹配零个或多个字符。像 data(\w)?.dat 这样的模式将查找下列文件:
    在这里插入图片描述
    尽管这种搜索方法很有用,但它还是有限的。通过理解 * 通配符的工作原理,引入了正则表达式所依赖的概念,但正则表达式功能更强大,而且更加灵活。
    正则表达式的使用,可以通过简单的办法来实现强大的功能。下面先给出一个简单的示例:
    在这里插入图片描述
  • ^ 为匹配输入字符串的开始位置。
  • [0-9]+匹配多个数字, [0-9] 匹配单个数字,+ 匹配一个或者多个。
  • abc 匹配字母 a b c 并以 a b c 结尾, 匹配字母 abc 并以 abc 结尾, 匹配字母abc并以abc结尾, 为匹配输入字符串的结束位置。
    我们在写用户注册表单时,只允许用户名包含字符、数字、下划线和连接字符 -,并设置用户名的长度,我们就可以使用以下正则表达式来设定。
    在这里插入图片描述以上的正则表达式可以匹配 runoob、runoob1、run-oob、run_oob, 但不匹配 ru,因为它包含的字母太短了,小于 3 个无法匹配。也不匹配 runoob$, 因为它包含特殊字符。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<script>
var str = "123abc";
var patt1 = /^[0-9]+abc$/;
document.write(str.match(patt1));
</script>

</body>
</html>
  • 关键代码:

在这里插入图片描述

  • 结果:

在这里插入图片描述

  • 通过使用正则表达式,可以:

    测试字符串内的模式。
    例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。
    替换文本。
    可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它。
    基于模式匹配从字符串中提取子字符串。
    可以查找文档内或输入域内特定的文本。
    可以使用正则表达式来搜索和替换标记。

总结

坚定信心,不断向前,冲冲冲!!
来自“https://www.runoob.com/regexp/regexp-intro.html”


http://www.kler.cn/a/2390.html

相关文章:

  • electron打包linux环境
  • 多个Echart遍历生成 / 词图云
  • 29、基于springboot的网上购物商城系统研发
  • Oracle 查询表占用空间(表大小)的方法
  • linux 使用zip unzip命令
  • 服务器防火墙设置某个端口号只允许固定 ip地址访问
  • 【LINUX】初识文件系统
  • 基于Spring Cloud集成OpenFeign应用feign客户端调用微服务
  • 【3.22】操作系统内存管理(整理)、Java并发
  • 程序员增加收入实战 让小伙伴们都加个鸡腿
  • 一台服务器最大能支持多少条 TCP 连接?问倒一大片。。。
  • 计算机组成原理——作业四
  • 网络编程套接字( TCP )
  • Prometheus监控实战之Blackbox_exporter黑盒监测
  • CMSIS-RTOS2 RTX5移植到GD32L233
  • 【练习题】python函数进阶练习
  • 【MySQL】1 MySQL的下载、安装与配置|提供安装包
  • EtherNet/IP网络模型
  • 【SpringBoot】Spring data JPA的多数据源实现
  • ChatGPT能否取代程序员?
  • css + js 超好看的消息提示
  • Python数据分析script必备知识(一)
  • 银行数字化转型导师坚鹏:基于招商银行案例研究的银行APP运营
  • Ubuntu-C语言下的应用
  • c#实现视频的批量剪辑
  • AI 未来已至,向量数据库站在新的节点上