请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 9828|回复: 4

正则表达式二求解惑

[复制链接]

1

主题

0

好友

19

积分

新手上路

Rank: 1

发表于 2018-8-1 09:38:09 |显示全部楼层
现在学到了正则表达式(2),有一个疑惑,就是匹配符为“.*”的时候,为什么最后会有一个空的引号呢?
TIM截图20180801093722.png
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-8-1 14:34:09 |显示全部楼层
* 表示0到多个
空字符串就是0个
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

1

主题

0

好友

19

积分

新手上路

Rank: 1

发表于 2018-8-1 14:44:22 |显示全部楼层
crossin先生 发表于 2018-8-1 14:34
* 表示0到多个
空字符串就是0个

可是别的后面也没有个“‘########’,‘1’”或者“‘########’,‘########’,‘2’”这样子啊。
别的都是“‘#####’,‘########’”或“‘#####’,‘########’,‘########’”之类的
而他是“,‘########’,‘’”这样子。
别的都是抓到就显示,抓不抓到也不会放个数字表示抓到的数量,为什么只有“.*”匹配的时候,最后会有一个空字符?而别的匹配不会有?
回复

使用道具 举报

无效楼层,该帖已经被删除

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-8-2 14:24:28 |显示全部楼层
伤感的小龙虾 发表于 2018-8-1 14:44
可是别的后面也没有个“‘########’,‘1’”或者“‘########’,‘########’,‘2’”这样子啊。
别的都 ...

和数量没关系。空字符不是0(回头看看字符串)
空字符就是str,只不过内容为空。我说“空字符串就是0”,是指空字符符合“0个任意字符”这个匹配规则
'' 就是符合 .* 这个规则,你不想这样那应该用 .+
其他的没有是因为其他的不符合(“1”、“2”不符合你的规则,况且文本里也不一定有1、2),这里不是什么特殊情况,就是严格按照规则来匹配的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-4-19 08:16 , Processed in 0.020646 second(s), 30 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部