Posted on 2007-07-17 23:29
kooyee 阅读(1539)
评论(0) 编辑 收藏 所属分类:
Java
public String[] split(String regex, int limit)
limit n 大于0,则pattern(模式)应用n - 1 次
String s = "boo:and:foo"
s.split(":",2)
//result is { "boo", "and:foo" }
limit n 小于0,则pattern(模式)应用无限次
String s = "boo:and:foo"
s.split(":",-2)
//result is { "boo", "and", "foo" }
limit n 等于0,则pattern(模式)应用无限次并且省略末尾的空字串
String s = "boo:and:foo"
s.split("o", -2)
//result is { "b", "", "and:f", "", "" }
s.split("o", 0)
//result is { "b", "", "and:f" }
The limit parameter controls the number of times the pattern is applied and therefore affects the length of the resulting array. If the limit n is greater than zero then the pattern will be applied at most n - 1 times, the array's length will be no greater than n, and the array's last entry will contain all input beyond the last matched delimiter. If n is non-positive then the pattern will be applied as many times as possible and the array can have any length. If n is zero then the pattern will be applied as many times as possible, the array can have any length, and trailing empty strings will be discarded.
The string "boo:and:foo", for example, yields the following results with these parameters:
Regex |
Limit |
Result |
: |
2 |
{ "boo", "and:foo" } |
: |
5 |
{ "boo", "and", "foo" } |
: |
-2 |
{ "boo", "and", "foo" } |
o |
5 |
{ "b", "", ":and:f", "", "" } |
o |
-2 |
{ "b", "", ":and:f", "", "" } |
o |
0 |
{ "b", "", ":and:f" } |