java和c#的split都差不多
以下是java的split的特性及一些例子:
java.lang.string.split
split 方法
将一个字符串分割为子字符串,然后将结果作为字符串数组返回。
stringObj.split([separator,[limit]])
stringObj
必选项。要被分解的 String 对象或文字。该对象不会被 split 方法修改。
separator
可选项。字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽
略该选项,返回包含整个字符串的单一元素数组。
limit
可选项。该值用来限制返回数组中的元素个数。
说明:
split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解
。separator 不作为任何数组元素的部分返回。
示例1:
public class SplitDemo {
public static String[] ss = new String[20];
public SplitDemo() {
String s = "The rain in Spain falls mainly in the plain.";
// 在每个空格字符处进行分解。
ss = s.split(" ");
}
public static void main(String[] args) {
SplitDemo demo = new SplitDemo();
for (int i = 0; i < ss.length; i++)
System.out.println(ss[i]);
}
}
程序结果:
The
rain
in
Spain
falls
mainly
in
the
plain.
示例2:
public class SplitDemo {
public static String[] ss = new String[20];
public SplitDemo() {
String s = "The rain in Spain falls mainly in the plain.";
// 在每个空格字符处进行分解。
ss = s.split(" ", 2);
}
public static void main(String[] args) {
SplitDemo demo = new SplitDemo();
for (int i = 0; i < ss.length; i++)
System.out.println(ss[i]);
}
}
程序结果:
The
rain in Spain falls mainly in the plain.
示例3:
public class SplitDemo {
public static String[] ss = new String[20];
public SplitDemo() {
String s = "The rain in Spain falls mainly in the plain.";
// 在每个空格字符处进行分解。
ss = s.split(" ", 20);
}
public static void main(String[] args) {
SplitDemo demo = new SplitDemo();
for (int i = 0; i < ss.length; i++)
System.out.println(ss[i]);
}
}
程序结果:
The
rain
in
Spain
falls
mainly
in
the
plain.
示例4:
public class SplitDemo {
public static void main(String[] args) {
String value = "192.168.128.33";
String[] names = value.split(".");
for (int i = 0; i < names.length; i++) {
System.out.println(names[i]);
}
}
}
运行结果:
对,没看错!没有任何输出!
让我们来看看 split 方法的方法签名吧:
public string[] split(string regex)
这里的参数的名称是 regex ,也就是 regular expression (正则表达式)。这个参数并不是一个简单的分割用的字符,而是一个正则表达式,看了 split 方法的实现代码就更坚定了我们的信心:
public string[] split(string regex, int limit) {
return pattern.compile(regex).split(this, limit);
}
split 的实现直接调用的 matcher 类的 split 的方法。读者已经知道,“ . ”在正则表达式中有特殊的含义,因此我们使用的时候必须进行转义。
只要将
String[] names = value.split(".");
改为
String[] names = value.split("//.");
就可以了。
输出结果:
192
168
128
33
再加一点儿补充(这是Java帮助文档中的,更清晰一些):
public String[] split(String regex,int limit)根据匹配给定的正则表达式来拆分此字符串。
此方法返回的数组包含此字符串的每个子字符串,这些子字符串由另一个匹配给定的表达式的子字符串终止或由字符串结束来终止。数组中的子字符串按它们在此字符串中的顺序排列。如果表达式不匹配输入的任何部分,则结果数组只具有一个元素,即此字符串。
limit 参数控制模式应用的次数,因此影响结果数组的长度。如果该限制 n 大于 0,则模式将被最多应用 n - 1 次,数组的长度将不会大于 n,而且数组的最后项将包含超出最后匹配的定界符的所有输入。如果 n 为非正,则模式将被应用尽可能多的次数,而且数组可以是任意长度。如果 n 为零,则模式将被应用尽可能多的次数,数组可有任何长度,并且结尾空字符串将被丢弃。
例如,字符串 "boo:and:foo" 使用这些参数可生成下列结果:
Regex Limit 结果
: 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" }
这种形式的方法调用 str.split(regex, n) 产生与以下表达式完全相同的结果:
Pattern.compile(regex).split(str, n)
参数:
regex - 定界正则表达式
limit - 结果阈值,如上所述
返回:
字符串数组,根据给定正则表达式的匹配来拆分此字符串,从而生成此数组
抛出:
PatternSyntaxException - 如果正则表达式的语法无效
从以下版本开始:
1.4
public String[] split(String regex)根据给定的正则表达式的匹配来拆分此字符串。
该方法的作用就像是使用给定的表达式和限制参数 0 来调用两参数 split 方法。因此,结果数组中不包括结尾空字符串。
例如,字符串 "boo:and:foo" 产生带有下面这些表达式的结果:
Regex 结果
: { "boo", "and", "foo" }
o { "b", "", ":and:f" }
参数:
regex - 定界正则表达式
返回:
字符串数组,根据给定正则表达式的匹配来拆分此字符串,从而生成此数组。
抛出:
PatternSyntaxException - 如果正则表达式的语法无效
温馨提示:内容为网友见解,仅供参考
java split是什么意思?
Java中的split()方法是一个字符串类String的方法,它的作用是将一个字符串根据指定的分隔符进行分割。例如,我们有一串字符"apple,banana,orange",如果我们以逗号为分隔符,那么使用split()方法,就可以将字符串分割成三个子串"apple","banana",和"orange"...
java中split的用法
`split` 方法是String类的一个成员方法,可以直接通过字符串对象来调用。它接受一个正则表达式作为参数,用于定义拆分的规则。例如,按照空格拆分字符串可以这样做:java String str = "Hello World!";String[] result = str.split;此时,`result` 数组将包含两个元素:"Hello" 和 "World!"。二、正...
javasplit方法
Java中的split方法是String类的一个方法,用于将字符串按照指定的分隔符进行拆分,并返回一个包含拆分后子字符串的数组。详细解释:1. 功能概述:Java的split方法的主要功能是将一个较大的字符串按照特定的分隔符拆分成若干个子字符串。这对于处理包含特定分隔符的文本数据非常有用,例如在处理CSV文件或日...
Java如何分割字符串?
在Java中,分割字符串通常使用split方法。该方法将字符串按照指定分隔符分割,并返回字符串数组,数组中的每个元素为分割后的子串。示例代码如下:首先定义字符串变量str,调用split方法传入分隔符" "(空格)进行分割,结果保存在字符串数组words中。通过for循环遍历输出每个单词。此外,可以使用正则表达式作为...
java split的用法
Java的split方法是将一个字符串按照指定的分隔符或正则表达式分解为子字符串,并返回一个字符串数组。split方法的基本用法是stringObj.split(separator, limit),其中stringObj是要分解的字符串,separator是可选的分隔符或正则表达式,limit是可选的限制参数,用于控制返回数组的元素个数。例如,SplitDemo类...
Java-字符串切割(split)
Java中,String对象的split()方法用于分割字符串。当不使用转义符进行分割时,如按"."进行分割,如果字符串中不含".",返回值将是一个空的长度为0的String数组。而如果使用"|"进行分割,即使字符串中不含"|",返回值将是一个长度与原字符串相等的String数组。原因在于,split()方法会将原字符串中每...
你没想到的Java中split函数的用法
split函数在Java中用于将字符串切分为多个子字符串,并返回一个字符串数组。语法如下:例如:这将返回一个包含两个元素的数组,分别代表"Hello"和"World"。如果在第二行代码中,将某部分替换为:则输出结果会变为:这显示split函数对特殊字符进行了转义,确保了字符串的正确分割。在正则表达式中,有许多...
Java中split的用法
Java中split主要用于分隔字符串。具体分析如下:1、如果用“.”作为分隔的话,必须是如下写法,String.split("\\\\."),这样才能正确的分隔开,不能用String.split(".")。2、如果用“|”作为分隔的话,必须是如下写法,String.split("\\\\|"),这样才能正确的分隔开,不能用String.split("|"),“.”和“...
Java 安全地使用 split 方法
在使用Java的split方法时,通常需要判断分割后的数组长度,以防下标越界。若处理文本文件,文件每行记录用户信息,包括姓名、年龄、Email与联系方式,其中Email与联系方式为可选。面对此情况,本文提出定义splitLine函数,负责解析数据行并返回解析后的User对象。User对象定义如下,考虑到split后数组长度可能为2...
请问split("\\\\.")是什么意思?(JAVA代码)
1. 首先要明白split方法的参数含义:public String[] split(String regex)根据给定的正则表达式的匹配来拆分此字符串。 2. 然后就要明确正则表达式的含义了:'.'点 匹配除“\\n”和"\\r"之外的任何单个字符。'\\'表示转义字符,而双重转义相当于原意,3. 因此“\\\\.”和“.”同意 4.全句即根据'....