繁体   English   中英

if语句和正则表达式java

[英]if statement and regular expressions java

我正在尝试实现一个if语句,以接受由Java中的字母ak(大写和小写)组成的单词。 我的输入是一个字符串。 我猜可能是这样的:

if(input.equals("[a-kA-K]+")){
    System.out.println("the input was: $0");
}

但我不确定该怎么做。

我认为您需要执行模式匹配之类的操作 例:

Pattern p = Pattern.compile("a*b");
 Matcher m = p.matcher("aaaaab");
 boolean b = m.matches();

然后

if(b)
{
 //Your code.
}

来自@yshavit的评论(重要):

值得注意的是,Pattern p对象是不可变的并且是线程安全的,并且可以共享(例如,通过一次创建Pattern并将其存储在私有static final中)。 如果您不必每次都创建模式,也不需要访问正则表达式中捕获的组,则也可以只调用静态Pattern.matches(pattern,stringToLookIn)

如果input是String ,则可以使用input.matches("[a-kA-K]+")

文档: http : //docs.oracle.com/javase/6/docs/api/java/lang/String.html#matches(java.lang.String)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM