2 weixin 40915647 weixin_40915647 于 2018.01.12 15:51 提问

求一个正则表达式1-10之间 要求 是 可以为1或者10,并且只允许小数点后一位,比如5.5。但5.55就不行

要求 是 可以为1或者10,并且只允许小数点后一位,比如5.5。但5.55就不行

14个回答

u013020593
u013020593   2018.01.12 16:28
已采纳

优化 @jmy1980的代码


import java.util.regex.Pattern;
public class test
{
    public static void main(String[] args)
    {
        Pattern p = Pattern.compile("^([1-9](\\.\\d)?)|(10)$");
        System.out.println("0" + p.matcher("0").matches());
        System.out.println("1" + p.matcher("1").matches());
        System.out.println("1.1" + p.matcher("1.1").matches());
        System.out.println("1.11" + p.matcher("1.11").matches());
        System.out.println("10" + p.matcher("10").matches());
    }
}
u013020593
u013020593 回复weixin_40915647: 我翻译一下这个正则表达式:匹配小数点前为1-9并且小数点后为一个正整数的数字,也匹配10这个数字
4 天之前 回复
u013020593
u013020593 回复weixin_40915647: 10.5是不匹配这个正则表达式的
4 天之前 回复
weixin_40915647
weixin_40915647 10.5可以么
4 天之前 回复
showbo
showbo   Ds   Rxr 2018.01.12 15:58
 ^([1-9](\.\d)?|10)$
dhh1226
dhh1226   2018.01.12 16:02

(10(.|.0)?)|(0.([1-9]?))|(1-9?)

weixin_40915647
weixin_40915647 8.555可以成功
4 天之前 回复
zhangxinjin000
zhangxinjin000   2018.01.12 16:04

^(1-9?|10)$

xiaokanxingchen
xiaokanxingchen   2018.01.12 16:08

/^[1-9]|10|[1-9]\.[0-9]$/

jmy1980
jmy1980   2018.01.12 16:18

^(1-9?)|(10)$

 Pattern p = Pattern.compile("^([1-9](\\.\\d)?)|(10)$");
        System.out.println("0"+p.matcher("0").matches());
        System.out.println("1"+p.matcher("1").matches());
        System.out.println("1.1"+p.matcher("1.1").matches());
        System.out.println("1.11"+p.matcher("1.11").matches());
        System.out.println("10"+p.matcher("10").matches());

结果:

 0false
1true
1.1true
1.11false
10true
jmy1980
jmy1980   2018.01.12 16:20

上贴拷贝有问题,代码为准。

  Pattern p = Pattern.compile("^([1-9](\\.\\d)?)|(10)$");
    System.out.println("0"+p.matcher("0").matches());
  System.out.println("1"+p.matcher("1").matches());
  System.out.println("1.1"+p.matcher("1.1").matches());
  System.out.println("1.11"+p.matcher("1.11").matches());
        System.out.println("10"+p.matcher("10").matches());

结果:

 0false
1true
1.1true
1.11false
10true

XZF01
XZF01   2018.01.12 16:37

(10(.|.0)?)|(0.([1-9]?))|(1-9?),,,

qq_28748797
qq_28748797   2018.01.12 16:54

/^(1-9)((.\d)?||(10))$/

lxm1324968931
lxm1324968931   2018.01.12 16:58

if [[ "$1" =~ ^(1-9?|10)$ ]];then
echo "ok"
fi

共14条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
lesson 10:用两个线程玩猜数字游戏,第一个线程负责随机给出1~100之间的一个整数,第二个线程负责猜出这个数。要求每当第二个线程给出自己的猜测后,第一个线程都会提示“猜小了”、“猜大了”或“猜
给定一个10位的整数组成的串,形式如: d1d2d3d4d5d6d7d8d9d10 。 其中最后的一位(即 )是校验和,其使用以下运算规则以前面的9位上的整数作为参数获得结果
JS正则表达式实现只允许大小写字母,数字,空白字符(限制粘贴)
汇编试验 (1)将 BUF开始的 10 个单元中的二进制数转换成两位十六进制数的 ASCII 码,在屏幕上显示出来。要求码型转换通过子程序 HEXAC实现,在转换过程中,通过子程序 DISP实现显示. (2)编程实现从键盘接受一个字符串,再从键盘接受一查找的字符(例如’g’) ,找到时提示’Yes,found !’,找不到时提示’No found !’ 。
有一个四位数 a1a2a3a4,每一位数都是0到9之间的一个数字(多种解法)
java生成不重复的随机数【某个范围0-10】或者【某个数组int[1,3,56,14,26,22,17]】
SQL 2008 R2升级R2 SP1或者SQL 2008从10.50.1600升级10.5.2500详细过程全程图解 此博文包含图片 (2012-05-02 20:33:05)转载▼ 标签: 10
我是怎么从0开始跑通ORBSLAM2+kinectv1的(win8或者win10)
输入一个正整数X,在下面的等式1 2 3 4 5 6 7 8 9 = X,左边的数字之间添加+号或者-号,使得等式成立。
第三题:等式变换 输入一个正整数X,在下面的等式左边的数字之间添加+号或者-号,使得等式成立。 1 2 3 4 5 6 7 8 9 = X