当我们需要对字符串进行切割时,会想到使用String的split()方法,但要想真正达到使用效果,需要注意以下几点:

  • 一个参数时,即方法:public String[] split(String regex);

    • 如果用“.”作为分隔,必须用:String.split("\."),这样才能正确的分隔开,不能用String.split(".");。
    • 如果用“|”作为分隔,必须用:String.split("\|"),这样才能正确的分隔开,不能用String.split("|");
    • “.”和“|”都是转义字符,必须得加"\";(详见java中正则表达式的规则)。
    • 如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如:“a=1 and b =2 or c=3”,把三个都分隔出来,可以用String.split(“and|or”);
  • 两个参数时,即方法:public String[] split(String regex,int limit);
    • limit > 0:表示切割 limit - 1 次,切割后的数组长度 <= limit
    • limit < 0:表示切割无数次,直到字符串中所有匹配 regex 的内容全部切割完,并把regex的位置全部替换为空格
    • limit = 0:情况同上,且会将末尾的空格去掉