Q:我要验证:String中是否存在xxx,应该怎么解决??
A:boolean isExistXXX = String.indexOf("xxx") != -1;
Q:我要从String中得到其数值,应该怎么解决??
A:int x = Integer.parseInt(string) ; float f = Float.parseFloat(string);
Q:我要验证:String中是否存在格式为xxx(xxx是正则表达式 )的字符串,应该怎么解决??
A:你想看有没有“abc”,可以matches(".*abc.*")
Q:java:String类的matches()方法如何使用,有什么用?
A:
match()的参数一般为正则表达式,现在两个正则表达式,可以试用
正则表达式一:可以适用任何形式的字符串,
其中LikeType是要匹配的字符串,patten是生成的正则表达式,sourceStr是已有字符串,判断sourceStr是否满足LikeType的正则表达式
public static void main(String[] args) {
// TODO Auto-generated method stub
String likeType = "23";
String pattern = "[a-zA-Z0-9]*[" + likeType + "]{1}[a-zA-Z0-9]*";
String sourceStr = "adfjaslfj23ldfalsf";
System.out.println(sourceStr.matches(likeType));
}
正则表达式二:固定位置的字符串匹配,理解同上,只是正则表达式的不同
public static void main(String[] args) {
// TODO Auto-generated method stub
String likeType = "%%%23%%%*";
String sourceStr = "423236664";
likeType = likeType.replaceAll("%", "////d").replaceAll("//*", "////d//*");
System.out.println(likeType);
System.out.println(sourceStr.matches(likeType));
}
match的方法比较简单,但绝对实用,所以要掌握用法,正则表达式的写法尤其重要。