检查字符串后的字符串

时间:2015-12-11 09:26:20

标签: java regex string java-ee pattern-matching

我正在编写一个逻辑来检查特定关键字后面是否有任何数字("顶部"在这种情况下)。

String test = "top 10 results";
String test = "show top 10 results";

我使用模式匹配查找来实现它的工作。

public static boolean hasNumberafterTOP(String query)
{
    boolean hasNumberafterTOP = false;
    Pattern pat = Pattern.compile("top\\s+([0-9]+)");
    Matcher matcher = pat.matcher(query);
        if(matcher.find())
        {
            hasNumberafterTOP = true;
            numberAfterTOP=matcher.group(1);
        }


    return hasNumberafterTOP;       
}

我有什么方法可以扩展这个检查以包含这些词。五,十,二十,三十等等?

1 个答案:

答案 0 :(得分:1)

试试这段代码:

String keyword = "top";
Pattern p= Pattern.compile("\\d*\\s+"+Pattern.quote(keyword));
Matcher match = p.matcher(query");
match .find();
String inputInt = makeMatch.group();
System.out.println(inputInt);