zoukankan      html  css  js  c++  java
  • Java的split()函数

    如字符串:http://www.vvcc.abc.com:8080/ 
    以“.”分割为字符串数组时,方法如下: 

    String domainNam="http://www.vvcc.abc.com:8080/"; 
    String[] splitStr = domainNam.split("\\."); 

    必须经过转义后才能分割,单纯的以domainNam.split(".");分割时,结构字符串数组长度为0;

     

     

    在Java里要用String.split但又不想被正则表达式的特殊字符干扰的话,可以这样:

    Java代码  收藏代码
    1. // String str; String splitStr;  
    2. String[] result = str.split(Pattern.quote(splitStr));  

     
    对于

    Java代码  收藏代码
    1. String str="a|bcd|efg|higk";  
    2. String[] strs= str.split("|");  

    这段看似正确代码有着很大的问题,问题的根源就是对于JAVA中字符串对象的split方法了解错误。 

    我们在写javascript等其他语言的程序时,split中的参数大多是指分隔字符串或分隔字符,而JAVA中则不是,他的参数是分隔规则,也就是一个正则表达式。

    可以使用:

    Java代码  收藏代码
    1. String[] strs= str.split("\\|");  

    字符'|'在正则表达式中的含义是替换,单独写了一个'|',也就告诉程序,我要按照每个字符进行分割,最后的拆分结果就是把str中个每一个字符都单独拆了出来,而不是我们想象的在'|'处分隔。 
    但是有一点最重要的就是:JAVA中的这个split的参数是个正则表达式,切忌!

    ---------------------------------------------------------------------------------------
    在java.lang包中有String.split()方法,返回是一个数组
    1、如果用“.”作为分隔的话,必须是如下写法:String.split("\\."),这样才能正确的分隔开,不能用String.split(".");
    2、如果用“|”作为分隔的话,必须是如下写法:String.split("\\|"),这样才能正确的分隔开,不能用String.split("|");
    “.”和“|”都是转义字符,必须得加"\\";
    3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如:“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split("and|or");

    我在IBM工作,可以为大家内部推荐IBM各种职位 IBM全球职位尽在以下链接(请在浏览器中打开,QQ/微信 会阻止): http://ibmreferrals.com/ 很乐意为感兴趣的小伙伴分享:我的面试经验^_^ 如需咨询,请邮件发送以下邮箱,有问必回 1026096425@qq.com
  • 相关阅读:
    PermissionError: [Errno 1] Operation not permitted: '/tmp/tmpg255ml7f' -> '/tmp/jieba.cache'
    远程连接MySql
    Unity 连接MySql数据库
    Unity WIndows语音识别(一)关键字识别
    Mac M1原生(ARM64)Golang dev&debug
    记一次思考:中级开发的突破之道
    深入web workers (上)
    indexDB出坑指南(二)
    html+css展示空白类字符的技巧
    前端冷知识
  • 原文地址:https://www.cnblogs.com/jackydalong/p/2474721.html
Copyright © 2011-2022 走看看