1::字符串的基本操作 比较 1:public boolean equals(Object anObject)
2:public boolean equalsIgnoreCase(String anotherString)
查找 1 :charAt(?)
2: indexOf("") //从左向右查找
3: lastIndexOf("") //从右向左
截取 1:substring()从指定位置开始 ;substring("x","x")从x开始到第几位置
转码 1:String s = "???";s = new String(s.getBytes("ISO-8859-1"),"UTF-8")
getBytes()在没有参数的情况下后面的说明是:
使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中."UTF-8"就是表示按某一个 编码转换..
替换 replaceAll("reg","?")
replaceFirst("reg","?");
replace("?","?");不支持正则
切割成数组 String chengshi= " 重庆 万州 五桥 我家 ";
String [] strs =chengshi.split("\b\s+\b");
System.out.println(strs.length);
for (String s : strs) {
System.out.println("|"+s+"|");
}
其他操作 该方法用于判断当前字符串的前缀是否和参数中指定的字符串prefix一致,如果是,返回true,否则返回false.
public boolean startsWith(String prefix, int toffset)
String st1 = "dsadas";
System.out.println("st1:"+st1.startsWith("sa",1)); true
2:contains("")
if(s1!=null && s1.indexOf("世界")!=-1){
System.out.println("Yes!");
}else{ System.out.println("No!");
}
3:判断字符串是否有内容
String s = " ";
if(s!=null && s.trim().length()>0){ empty()
System.out.println("OK!");
}else{
System.out.println("NO!");
}
4: =比较的是内存地址
5: 正则表达式
正则表达式就是定义一个字符串的规则。
// [] 范围
// {} 数量
// () 捕获组
// ^ 头部(^)中为非
// $ 尾部
// + 1个或者多个
// * 0个或者多个
// ? 有或者无
// \s 空白
// \S 非空白
// \w 字母 \\W 65-90
// \W 非字母
// \d 数字
// \D 非数字
// \b 边界
// \B 非边界
//, 逗号 表示 大于等于
//. 点 表示任意字符(不包括头部、尾部)
想去掉空格,可以使用边界\\b
6:转义的注意点。java中和正则表达式中:(普通的正则表达式要写在java中需要加一个转义符号)
7:\u0041-\u005A A-Z [\u4e00-\u9fa5]中文
8:不写^字符串有默认边界 写上^字符串就不能识别
9;匹配
10:用正则表达式写出 url String regEx1 = "https?://(/[\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?";
邮箱 String regEx2 = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";