如何用Java正则表达式检测字符串是否是数字组成的

如题所述

1,正则表达式概念介绍(内容来自百度百科):正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。

正则表通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。

2,检测字符串是否由数字组成,则采用该表达式:

public static void main(String[] args) {
    // è¦éªŒè¯çš„字符串
    String str = "service@xsoftlab.net";
    // æ˜¯å¦æ•°å­—正则表达式
    String regEx = "^[0-9]*$";
    // ç¼–译正则表达式
    Pattern pattern = Pattern.compile(regEx);
    // å¿½ç•¥å¤§å°å†™çš„写法
    Matcher matcher = pattern.matcher(str);
    // å­—符串是否与正则表达式相匹配
    boolean rs = matcher.matches();
    // å¦‚果为数字,则输出true,反之false,即可用该变量做条件判断
    System.out.println(rs);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-08-30
import java.util.Scanner;
public class ReUse {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);//定义输入对象
String input="";
boolean right=false;
do{
input=sc.nextLine();//输入一个字符串
right=input.matches("^\\d+-+\\d+$");//正则表达式
if(!right)//不符合
System.out.print("输入有错,请重输: ");
}while(!right);
}

}

给楼主写了个小程序。。。

楼主运行测试一下吧

反正我已经测试运行过了。。

还没有挑出毛病。。

祝楼主早日成功哈!!!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网