问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

正则表达式是什么?有什么用?

发布网友 发布时间:2022-05-04 01:21

我来回答

14个回答

热心网友 时间:2022-04-18 22:00

简单的说就是,用一小段简单的各种字符的组合,即叫做 正则表达式,去实现复杂的:

字符串匹配,查找你到你所需要的内容,以便后期提取出来你所要的内容。

这个听起来很简单,但是很多现实的应用中,所要处理的字符串有千千万万种,各种复杂的字符,而且每个人的需求有无穷尽种,需要提取出的内容也是无穷多。而如果手动处理,写普通的if else语句去一点点判断字符串是否相等,则是无法实现的。

而用正则,就可以实现如此多的,繁杂的,极度复杂的,各种需求。

更多的内容,可以看看我所总结的:

正则表达式学习心得

再举几个实际的例子:

3.4. Notepad++的正则表达式替换和替换

中的:

    Notepad++正则表达式替换举例1:一次性替换多个文件的后缀

    Notepad++正则表达式替换举例2:一次性替换多个路径

    Notepad++正则表达式替换举例3:一次性替换多个listitem为sect4

    Notepad++正则表达式替换举例4:给每一行都添加AddIcon的前缀

    Notepad++正则表达式替换举例5:给book的标题和地址添加html代码

(这里不给贴地址,请自行google搜标题,即可找到帖子地址)

热心网友 时间:2022-04-18 23:35

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

给定一个正则表达式和另一个字符串,我们可以达到如下的目的:
1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。

简单点说,正则表达式跟平时用的字符串操作功能函数类似,但比这些函数的功能要强大的多。

举例说,你爱看某本非常之流行的小说,你想要从某个网站下载,并将这些内容分章节保存到你的计算机里,但直接下载的话,可能网页里面有很多不想要的(比如一些讨厌的广告什么的),如果要用字符串替换也可以做到,但许多广告字符串蛮狡猾滴说,老是有些小变化来着,如果每个都替换一下会累似人的,这时正则表达式就可以大有用处了,它可以通过某些规则适应这些变化,而自动删除。

热心网友 时间:2022-04-19 01:26

正则表达式用于字符串处理、表单验证等场合,实用高效!就是用符号代替一大长串的代码!这样写着简单!我给你个例子吧!
比如:匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
表单验证时很实用

热心网友 时间:2022-04-19 03:34

比如这段代码中,你要获取所有的 网址(url)。。。。。你会怎么做???

如果有正则。就好办了。。

热心网友 时间:2022-04-19 05:59

像一般的错误我们是以抛错的形式进行错误捕获,但是有些固定的格式,就要借鉴正则表达式进行检测,像邮箱的格式,可以用正则表达式进行检验,还有判断数字为非负整数等等

热心网友 时间:2022-04-19 08:40

如果你相信我,你就花上三十分钟看一下这个网站
http://deerchao.net/tutorials/regex/regex.htm
正则表达式30分钟入门,不要吝啬这三十分钟,我以前也是看这个后来才会的

热心网友 时间:2022-04-19 11:38

正则表达式是用来做验证的,这个没有标准的格式,是跟据你验证的东西不同,表达式的写法也不同,在百度上有许多自己查一查就知道了

热心网友 时间:2022-04-19 14:53

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

它是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。

扩展资料:

正则表达式的特点是:

1. 灵活性、逻辑性和功能性非常强;

2. 可以迅速地用极简单的方式达到字符串的复杂控制。

3. 对于刚接触的人来说,比较晦涩难懂。

由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。

参考资料:正则表达式-百度百科

热心网友 时间:2022-04-19 18:24

正则表达式,又称规则表达式。是计算机科学的一个概念。

正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。

正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。


扩展资料

正则表达式的作用:

1、匹配

检查字符串是否符合正则表达式中的规则,有一次不匹配,则返回false。如:

String str="abc";

String reg="[a-zA-Z]\\d?";//次表达式表示字符串的第一位只能是字母,第二位只能是数字或没有boolean flag=str.matches(reg);//返回结果为true。

2、切割

所谓切割,即是按一定的规则将字符串分割成多个子字符串,如:

String str="zhangsan,lishi,wangwu"。

String reg=",";//表示以逗号作为切割符。

String[] arr=str.split(reg);//返回结果为{“zhangsan”,"lisi","wangwu}。

3、替换

即将字符串中符合规则的字符替换成指定字符,如:

String str="sfhjhfh136hjasdf73466247fsjha8437482jfjsfh746376"。

str.replaceAll("\\d{3,}","#");//表示将连续出现三个或三个以上的数字替换成“#”。

参考资料来源:百度百科-正则表达式

热心网友 时间:2022-04-19 22:12

正则表达式,又称规则表达式,计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

正则表达式应用——替换指定内容到行尾:

原始文本如下面两行

abc aaaaa

123 abc 444

希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg”

即上面的文本最终替换为:

abc efg

123 abc efg

解决:

1、在替换对话框,查找内容里输入“abc.*”,替换内容输入为“abc efg”。

2、同时勾选“正则表达式”复选框,然后点击“全部替换”按钮。

其中,符号的含义如下:

“.” =匹配任意字符

“*” =匹配0次或更多

注意:其实就是正则表达式替换,这里只是把一些曾经提出的问题加以整理,单纯从正则表达式本身来说,就可以引申出成千上万种特例。

扩展资料:

正则表达式的特点是:

1、灵活性、逻辑性和功能性非常强。

2、可以迅速地用极简单的方式达到字符串的复杂控制。

3、对于刚接触的人来说,比较晦涩难懂。

4、由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。

参考资料:百度百科—正则表达式

热心网友 时间:2022-04-20 02:17

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。

正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

扩展资料

正则表达式应用——实例应用

1.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位;

2.验证电话号码:("^(\d{3,4}-)\d{7,8}$")正确格式:xxx/xxxx-xxxxxxx/xxxxxxxx;

3.验证手机号码:"^1[3|4|5|7|8][0-9]{9}$";

4.验证身份证号(15位):"\d{14}[[0-9],0-9xX]",(18位):"\d{17}(\d|X|x)";

5.验证Email地址:("^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$");

6.只能输入由数字和26个英文字母组成的字符串:("^[A-Za-z0-9]+$");

7.整数或者小数:^[0-9]+([.][0-9]+){0,1}$

8.只能输入数字:"^[0-9]*$"。

9.只能输入n位的数字:"^\d{n}$"。

参考资料:

百度百科-正则表达式

热心网友 时间:2022-04-20 06:38

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。

正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。

正则表达式的特点是:

1、灵活性、逻辑性和功能性非常强。

2、可以迅速地用极简单的方式达到字符串的复杂控制。

3、对于刚接触的人来说,比较晦涩难懂。

4、由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到著名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。


扩展资料:

应用实例

【1】正则表达式应用——替换指定内容到行尾

原始文本如下面两行

abc aaaaa

123 abc 444

希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abc efg”

即上面的文本最终替换为:

abc efg

123 abc efg

解决:

① 在替换对话框,查找内容里输入“abc.*”,替换内容输入为“abc efg”

② 同时勾选“正则表达式”复选框,然后点击“全部替换”按钮

其中,符号的含义如下:

“.” =匹配任意字符

“*” =匹配0次或更多

注意:其实就是正则表达式替换,这里只是把一些曾经提出的问题加以整理,单纯从正则表达式本身来说,就可以引申出成千上万种特例。

参考资料来源:百度百科--正则表达式

热心网友 时间:2022-04-20 11:16

正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。

正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或多个字符串。

正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。每一门计算机编程语言,都支持正则表达式。正则表达式能够进行数据隐藏,数据采集,数据过滤和数据验证。

扩展资料:

使用正则表达式创建正则对象方法如下:

1.字面量写法-以斜杠表示开始和结束; var regex = /xyz/。

2.内置构造函数生成-通过实例化得到对象;var regex = new RegExp('xyz')。

正则表达式里面字符串含义:

test(str) :判断字符串中是否具有指定模式的子串,返回结果是一个布尔类型的值;exec(str) :返回字符串中指定模式的子串,一次只能获取一个与之匹配的结果。

search(reg) :与indexOf非常类似,返回指定模式的子串在字符串首次出现的位置。

match(reg): 以数组的形式返回指定模式的字符串,可以返回所有匹配的结果。

replace(reg,'替换后的字符') :把指定模式的子串进行替换操作。

split(reg) :以指定模式分割字符串,返回结果为数组。

参考资料来源:百度百科—正则表达式

热心网友 时间:2022-04-20 16:11

简单的说就是,用一小段简单的各种字符的组合,即叫做 正则表达式,去实现复杂的:
字符串匹配,查找你到你所需要的内容,以便后期提取出来你所要的内容。
这个听起来很简单,但是很多现实的应用中,所要处理的字符串有千千万万种,各种复杂的字符,而且每个人的需求有无穷尽种,需要提取出的内容也是无穷多。而如果手动处理,写普通的if else语句去一点点判断字符串是否相等,则是无法实现的。
而用正则,就可以实现如此多的,繁杂的,极度复杂的,各种需求。

更多的内容,可以看看我所总结的:
正则表达式学习心得

再举几个实际的例子:
Notepad++正则表达式替换举例1:一次性替换多个文件的后缀
Notepad++正则表达式替换举例2:一次性替换多个路径
Notepad++正则表达式替换举例3:一次性替换多个listitem为sect4
Notepad++正则表达式替换举例4:给每一行都添加AddIcon的前缀
Notepad++正则表达式替换举例5:给book的标题和地址添加html代码
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
英语句子要翻译成中文,大家帮忙呀 邮政储蓄卡密码忘了,被锁了再异地可以办理吗 作文会心一笑600字求 会心一笑的初三作文 会心一笑的作文 惠普打印机D2568的是加墨水好,还是改成连供好??改成连供要多少钱?? 惠普打印机Deskjet D2568墨盒在哪可以买得到,一个多少钱 高铁司机是否会被机器人代替 高铁是人工驾驶还是自动驾驶 金牛座是否有同性恋倾向大神们帮帮忙 SimpleDateFormat 是什么? data[arguments[2]] 这个这么解释?下面是全部代码 JAVA data转String 上中国际和上实国际哪个好 "<=DateSerial(Year(Date())-1,5,1)"与<=format(date(),"yyyy-5-1“的区别 求问什么是数据挖掘 c++初学,问题如下:假设我有一个hex数据集ff ff a9 12 33 55 11 ff f2 33 11 33 55 66 11 ,我想把其中的 datamatrix 支持汉字吗 datapattern.js 是啥意思啊 JPG图片无图标 笔记本与上网本的区别。 如何添加拍一拍文字 能举报不是好友的码? 如何计算房产的过户费用? 水印相机是什么东东? 影视后期制作有哪些好的培训机构? 女性阴道一般有多长 关于女性阴道有多长?的问题 牛年男宝宝叫ⅹ玉玺好不好? 请问只知道 但不是好友能举报吗 能的话怎么举报 请大师指点 用VB如何修改系统区域时间的格式? 上中国际部 data normalization是什么意思 java中,怎样把 20 Dec 2012 10am 这样的时间字符串转换成Date类型的??要求的格式是1970-12-12 14:07:00 请问这个js是什么意思? Date.prototype.getFormattedDate 用QQ号/邮箱,登录怎么填写 读取data.txt中的信息,统计其有多少个单词,多少个逗号,多少个句号,并打印输出(java编写) 长脸,想换短发发型,什么样的适合? 上中国际部 平和 (高中部)哪个比较好 关于上中国际部的问题 平和学校 上中国际部 上海耀中 哪个好? 孩子考上了世界外国语小学(境外双语)和上中国际(英语),都是名校,不知道读哪个好啦!可是我和爸爸的 微信用QQ邮箱登录+账号输入有误怎么回事 jeffblake 为什么用but 不是so I arrived at the office late as usual but Mr.Blake saw me and he was very angry all of me blake 中文歌词 要翻译很好的 有没有 谁在上海中学国际部?以前上过的也可以。 上实国际高中浦西校区 上中国际部小学部教学理念? 上实剑桥国际高中会劝退吗
  • 焦点

最新推荐

猜你喜欢

热门推荐