我想知道以下代码有什么问题。
public void onClickSave (View cs)
{
Pattern pattern = Pattern.compile("@");
Matcher matcher = pattern.matcher(userid);
boolean found = matcher.find();
if(found){
//do stuff
所以目标是检查字符串是否为@符号。不确定我缺少Java新手。谢谢你的帮助
答案 0 :(得分:3)
为什么你不尝试使用contains方法?
String userID = "@Test";
boolean found = userID.contains("@");
但这对我也有用:
String userID = "@Test";
Pattern pattern = Pattern.compile(".*@.*");
Matcher matcher = pattern.matcher(userID);
boolean found = matcher.find();
答案 1 :(得分:2)
正则表达式在这里过度,你可以使用contains
方法完成同样的事情,
if(userid.contains("@")){
//Do something.
答案 2 :(得分:1)
试试这个:
if(userid.contains("@") {
//do stuff
}
答案 3 :(得分:1)
使用String#contains
或
@
字符(如果有的话)使用正则表达式执行这样一个简单的任务是不必要的,而且过于复杂。