前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >正则表达式必知必会 - 入门

正则表达式必知必会 - 入门

作者头像
用户1148526
发布2023-10-14 09:50:29
2070
发布2023-10-14 09:50:29
举报
文章被收录于专栏:Hadoop数据仓库

一、用途

        正则表达式的用途不外乎两种情况:一种是查找特定的信息,另一种是查找并编辑特定的信息,从根本上来讲就是搜索和替换。给定一个正则表达式,它要么匹配一些文本(进行一次搜索),要么匹配并替换一些文本(进行一次替换)。

        请注意,“相等”(equality)测试(比如说,用户给出的电子邮件地址是否匹配这个正则表达式)本质上也是一种搜索操作,这种搜索操作会对用户所提供的整个字符串进行搜索以寻找一个匹配。与此相对的是子串搜索,这是搜索的惯常含义。

        MySQL 中对应的函数为:

  • 子串搜索:regexp_substr
  • 相等测试:regexp_like
  • 匹配替换:regexp_replace

二、定义

        简单地说,正则表达式是一些用来匹配和处理文本的字符串。正则表达式是用正则表达式语言创建的,与其他程序设计语言一样,正则表达式语言也有必须要学习的特殊语法和指令。正则表达式语言并不是一种完备的程序设计语言,它甚至算不上是一种能够直接安装并运行的程序或实用工具。更准确地说,正则表达式语言是内置于其他语言或软件产品里的“迷你”语言。现在几乎所有的语言或工具都支持正则表达式。正则表达式语言虽然也被称为一种语言,但它与人们对语言的印象相去甚远。

三、使用

        正如前面解释的那样,不存在所谓的正则表达式程序。它既不是可以直接运行的应用程序,也不是可以从哪里购买或下载下来的软件。在绝大多数的软件产品、编程语言、实用工具和开发环境里,正则表达式语言都已被实现。正则表达式的使用方法和具体功能在不同的应用程序/语言中各有不同。一般来说,应用程序大多通过菜单选项和对话框来使用正则表达式,而程序设计语言大都通过函数、类或对象提供正则表达式功能。此外,并非所有的正则表达式实现都是一样的。在不同的应用程序/语言里,正则表达式的语法和功能往往会有明显(有时也不那么明显)的差异。

        使用正则表达式时会发现,几乎所有的问题都有不止一种解决方案。有的比较简单,有的比较快速,有的兼容性更好,有的功能更全。这么说吧,在编写正则表达式的时候,只有对、错两种选择的情况是相当少见的——同一个问题往往会有多种解决方案。正如前面讲过的那样,正则表达式的不同实现往往会有所差异。学习正则表达式的关键是实践,实践,再实践。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、用途
  • 二、定义
  • 三、使用
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档