正则表达式 只能出现一次或0次

 我来答
汝兴有冉淑
2020-04-16 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.2万
采纳率:30%
帮助的人:974万
展开全部
这个正则表达式是不会接受个位数的,它只接受两位以上的数。
[1-9]这个必须要一个1-9的数
[0-9]*这个代表0-9中的数出现一次或N次
[.]?这个不只是代表一个点了,也可以是其他(中文或者英文或者数字),并且只能出现一个或0个
[1-9]+这里就代表1-9中必须出现至少一次
所以综上2是不接受的。可以匹配的如下例子:
101254.12458
101254.12
11
1.25
1b1264
兴树枝步罗
2020-04-11 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:26%
帮助的人:904万
展开全部
[1-9]\d*\.?[1-9]+
这样更好
——————————————————
这个正则表达式为什么不接受2呢?
不只是2,所以一位数都不行
因为你设定的是一定要有1个数字在前,后面还得跟着1-N个数字
如果你想连一位数都包括的话就是(我没验证过):
(([1-9]\d*\.)?[1-9]+)
————————————————————
提示:不知道你用什么语言,一般数学问题都是程序问题,不应该是正则的工作;
测试可以去:http://mengzhuo.org/regex/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
军悦昆吾Qh
2020-04-12 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:29%
帮助的人:942万
展开全部
c(?=((?!c).)*$)
匹配最后一个出现的字符c
无论这个字符是不是最后出现的,打印出来还是这个字符,除非这个正则表达式前后还有字符,才能判断出是最后出现的字符,如
[a-z]{2}c(?=(.(?!c))*$)
匹配最后包含字符
c的连续3个小写字母
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式