匹配正整数或正小数的正则表达式哪个更准确? [1-9]\d*\.?\d* [1-9][0-9]{0
匹配正整数或正小数的正则表达式哪个更准确?[1-9]\d*\.?\d*[1-9][0-9]{0,}\.{0,1}[0-9]{0,}[0-9]+([.]{1}[0-9]+)...
匹配正整数或正小数的正则表达式哪个更准确?
[1-9]\d*\.?\d*
[1-9][0-9]{0,}\.{0,1}[0-9]{0,}
[0-9]+([.]{1}[0-9]+){0,1} 展开
[1-9]\d*\.?\d*
[1-9][0-9]{0,}\.{0,1}[0-9]{0,}
[0-9]+([.]{1}[0-9]+){0,1} 展开
2个回答
展开全部
给你补习下,方便以后都好用
\d:表示任意一个数字
\w:表示任意一个单词字符(只能是 数字,字母,下划线)
\s:表示任意一个空白字符
\D:表示任意一个非数字字符
\W:表示任意一个非单词字符
\S:表示任意一个非空白字符
"[]"用来描述单一字符,方括号内部可以定义这个字符的内容,也可以描述一个范围
例如:[1,2,3],表示该字符只能是1或2或3
"+":表示内容可以连续出现至少1次以上
"*":表示内容出现0-若干次
"?":表示内容出现0-1次
{n}:表示内容必须出现n次
{n,m}:表示内容出现n-m次
{n,}:表示内容出现至少n次
\d:表示任意一个数字
\w:表示任意一个单词字符(只能是 数字,字母,下划线)
\s:表示任意一个空白字符
\D:表示任意一个非数字字符
\W:表示任意一个非单词字符
\S:表示任意一个非空白字符
"[]"用来描述单一字符,方括号内部可以定义这个字符的内容,也可以描述一个范围
例如:[1,2,3],表示该字符只能是1或2或3
"+":表示内容可以连续出现至少1次以上
"*":表示内容出现0-若干次
"?":表示内容出现0-1次
{n}:表示内容必须出现n次
{n,m}:表示内容出现n-m次
{n,}:表示内容出现至少n次
2016-01-20
展开全部
写个测试案例一下,就清楚了
p1
[1-9]\d*\.?\d* 1
[1-9]\d*\.?\d* 1.00
[1-9]\d*\.?\d* 1.0234
[1-9]\d*\.?\d* 1.2345
[1-9]\d*\.?\d* 11.2345
p2
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1.00
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1.0234
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1.2345
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 11.2345
p3
[0-9]+([.]{1}[0-9]+){0,1} 1
[0-9]+([.]{1}[0-9]+){0,1} 1.00
[0-9]+([.]{1}[0-9]+){0,1} 1.0234
[0-9]+([.]{1}[0-9]+){0,1} 1.2345
[0-9]+([.]{1}[0-9]+){0,1} 11.2345
简单看,三个都可以,那就选简单的————但第1、第2 种,对 0.0 不匹配的。
p1
[1-9]\d*\.?\d* 1
[1-9]\d*\.?\d* 1.00
[1-9]\d*\.?\d* 1.0234
[1-9]\d*\.?\d* 1.2345
[1-9]\d*\.?\d* 11.2345
p2
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1.00
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1.0234
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 1.2345
[1-9][0-9]{0,}\.{0,1}[0-9]{0,} 11.2345
p3
[0-9]+([.]{1}[0-9]+){0,1} 1
[0-9]+([.]{1}[0-9]+){0,1} 1.00
[0-9]+([.]{1}[0-9]+){0,1} 1.0234
[0-9]+([.]{1}[0-9]+){0,1} 1.2345
[0-9]+([.]{1}[0-9]+){0,1} 11.2345
简单看,三个都可以,那就选简单的————但第1、第2 种,对 0.0 不匹配的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询