如果string包含除字母和空格以外的任何内容,则报告错误输入

时间:2016-06-22 17:30:01

标签: java symbols

我的程序旨在返回用户输入的任何字符串的反转版本,但如果字符串包含任何符号,它还应报告错误输入。我似乎找不到办法做到这一点。顺便提一下,程序附带了一个IO.java模块。这是我的代码

project:dataset.table

2 个答案:

答案 0 :(得分:1)

将以下代码放在main方法中并进行测试。

Pattern p = Pattern.compile("[^a-z0-9 ]", Pattern.CASE_INSENSITIVE);
    Scanner sc = new Scanner(System.in);
    System.out.println("Pleease enter a String ::");
    String str = sc.next();
    Matcher m = p.matcher(str);
    if (m.find()){
        System.out.println("String Contains Special Chars");
    }else{

        System.out.println("It is String ");
        System.out.println(new StringBuilder(str).reverse().toString());
    }
       sc.close();

答案 1 :(得分:0)

您可以使用regexp检测非字母数字符号

Pattern pattern = Pattern.compile("[^a-zA-Z0-9]");
Boolean hasNonAlphaNumeric = p.matcher(s).find();

或者您可以使用Apache的StringUtils类及其方法

boolean StringUtils.isAlphanumeric(String string)