正则是什么,能做什么?
正则表达式是什么?
正则表达式,英文是 Regular Expression,简称 RE。顾名思义,正则其实就是一种描述文本内容组成规律的表示方式。
在编程语言中,正则常常用来简化文本处理的逻辑。在 Linux 命令中,它也可以帮助我们轻松地查找或编辑文件的内容,甚至实现整个文件夹中所有文件的内容替换,比如 grep、egrep、sed、awk、vim 等。另外,在各种文本编辑器中,比如 Atom,Sublime Text 或 VS Code 等,在查找或替换的时候也会使用到它。总之,正则是无处不在的,已经渗透到了日常工作的方方面面。
简单来说,正则是一个非常强大的文本处理工具,它的应用极其广泛。我们可以利用它来校验数据的有效性,比如用户输入的手机号是不是符合规则;也可以从文本中提取想要的内容,比如从网页中抽取数据;还可以用来做文本内容替换,从而得到我们想要的内容。
正则表达式又分有几个概念,分别是元字符、分组、匹配模式、断言等多个概念,把这些概念模型摸透了,写出正则表达式就非常简单了,无非就是查阅语法手册,把之前学会的概念模型按照对应语言或工具的约定写下来而已。
为什么要使用正则表达式?
典型的搜索和替换操作要求您提供与预期的搜索结果匹配的确切文本。虽然这种技术对于对静态文本执行简单搜索和替换任务可能已经足够了,但它缺乏灵活性,若采用这种方法搜索动态文本,即使不是不可能,至少也会变得很困难。

通过使用正则表达式,可以:
测试字符串内的模式。
例如:可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证,也称校验数据有效性。切割、替换文本。
可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换或者切割它。基于模式匹配从字符串中提取子字符串
可以查找文档内或输入域内特定的文本,也就是查找符合要求的文本内容。