zoukankan      html  css  js  c++  java
  • 【转】Java中Split函数的用法技巧

    转自:http://www.cnblogs.com/liubiqu/archive/2008/08/14/1267867.html

    在java.lang包中也有String.split()方法,与.net的类似,都是返回是一个字符型数组,但使用过程中还有一些小技巧。
    如执行:"2|33|4".split("|")

    出来的结果是:

    ""

    2

    |

    3

    3

    |

    4

    奇怪吧,不过注意看一下API说明还是知道原因的.

    java.lang.string.split
    split 方法
    将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
    stringObj.split([separator,[limit]])
    参数
    stringObj
    必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。
    separator
    可选项。字符串或 正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。
    limit
    可选项。该值用来限制返回数组中的元素个数。

    说明
    split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解

    所以正常的写法是这样的:

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

     

  • 相关阅读:
    [718. 最长重复子数组]
    排序算法--归并,堆,快速排序
    改进的插排--希尔排序
    排序算法--选泡插
    对封装继承多态的理解
    Servlet[springmvc]的Servlet.init()引发异常
    [面试题 16.18. 模式匹配]
    [124. 二叉树中的最大路径和](
    7.29_python_lx_day11
    7.28_python_lx_day18
  • 原文地址:https://www.cnblogs.com/cappuccino/p/2150390.html
Copyright © 2011-2022 走看看