加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

字符串的分割

发布时间:2020-12-14 02:08:09 所属栏目:百科 来源:网络整理
导读:1. split split可以把串分解为片语(token)。此动作,俗称“打散”。 需要注意的是,其中的参数并不是“分隔串”,而是一个“正则表达式”。 String s = "xyz,abc,123"; String[] ss = s.split(","); 这种用法是正确的。因为,逗号并不是正则表达式的关键字
1. split
split可以把串分解为片语(token)。此动作,俗称“打散”。
需要注意的是,其中的参数并不是“分隔串”,而是一个“正则表达式”。
String s = "xyz,abc,123";
String[] ss = s.split(",");
这种用法是正确的。因为,逗号并不是正则表达式的关键字。如果想把“12+25”分解为“12”和“25”,就不能像下面这样写了:
String s = "12+25";
String[] ss = s.split("+");
这是因为“加号”在正则表达式中有特殊的含义。如果希望作为分隔符的就是“+”,则可以采用转义的办法来表达。
String[] ss = s.split("[+]");
或者
String[] ss = s.split("+");
其中,有些奇怪的是第二种写法。之所以写两个反斜线,是因为,反斜线也是java串中的转义符号,所以此处是经过了两次转义。第一次是java转义,第二次是正则表达式的转义。

2. java.util.StringTokenizer 有的时候,使用StringTokenizer更容易对串进行分解工作。这是类可根据我们提供的分隔符号把一个串,分解为多个token,分解的时候,也可以包含分隔符本身,也可以不包含。 String s = "23+45-(3+5*2)"; StringTokenizer st = new StringTokenizer(s,"+-*/()",true); while(st.hasMoreTokens()){ System.out.println(st.nextToken()); } 另外,countTokens()可以返回tokens的数目。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读