我如何识别"评论"在一个字符串?我的评论"从*
开始。
例如,*this is a comment.
会被识别为评论。
这是我的代码:
public static boolean isComment(String s) {
s = s.replaceAll("\\s+","");
String comment = "'*'[a-zA-Z0-9_]+"; //Somehow using *[a-zA-Z0-9_]+ does not work.
Pattern p = Pattern.compile(comment);
Matcher m = p.matcher(s);
if(m.find())
return true;
return false;
}
答案 0 :(得分:1)
您可以将以下代码用于您的方法:
String s="hey *this is a comment*";
String comment = "\\*[^*]*\\*";
Pattern p = Pattern.compile(comment);
Matcher m = p.matcher(s);
if(m.find())
System.out.println("found you, bad comment!");
else
System.out.println("it looks like there is no comment...");
输入:
hey *this is a comment*
输出
found you, bad comment!
输入:
I am not a comment right?
输出
it looks like there is no comment...
您可以根据您的具体需求进行调整:
如果评论应从行的开头开始使用:
"^\\*[^*]*\\*"
如果您不需要结束*
来将消息标识为注释,请使用:
"\\*.*"
<强>作业:强>
答案 1 :(得分:-2)
使用此正则表达式"^\\*"
字符串代替"'*'[a-zA-Z0-9_]+"
。
我希望能帮到你