首页 > 解决方案 > 如何检查以确保用户输入与某个开始字符匹配

问题描述

我正在编写一个程序,该程序使用扫描仪获取用户输入并检查它是否以 y 或 Y 开头来执行操作。任何其他条目将被视为错误并执行不同的操作。

Scanner scnr = new Scanner(System.in);
String userInput;
userInput = scnr.next().charAt(0);
if (userInput.equalsIgnoreCase("y"))

这就是我此时的想法,但这不是我的完整代码。我知道 string 和 char 不兼容,但我不确定还能如何做到这一点。我也不只是想像这样在 if 语句中放置条目的多个变体

if (userInput.equalsIgnoreCase("y") || userInput.equalsIgnoreCase("yup"))

我希望这个问题是有道理的。我是编程和这个网站的新手,所以如果这很明显,我很抱歉!

标签: java

解决方案


您还可以使用正则表达式作为输入:

    String str = "Your String";
    Pattern pattern = Pattern.compile("y.*|Y.*");
    Matcher matcher = pattern.matcher(str);
    if (matcher.matches()) {
        System.out.println(str); // Display the string.
    }

推荐阅读