`

Java String.split(String regex, int limit)使用

 
阅读更多

split的作用:

将一个字符串分割为子字符串,然后将结果作为字符串数组返回。

参数说明:

String regex:

regex音译为正则表达式,简单理解就是我们用来分割字符串的一个规则。

int limit:

limit音译为限制,通俗的说就是设置返回数组元素的个数

看代码(1):

	public static void main(String[] args) {
		String source = "A&BC&DEF&GH";//演示字符串数据源
		//设置limit=0时
		String [] segment = source.split("&", 0);//分割数组数据
		System.out.println("分割数组长度:"+segment.length);
		System.out.println("分割数组数据:"+Arrays.toString(segment));
	}
输出结果:
分割数组长度:4
分割数组数据:[A, BC, DEF, GH]

 看代码(2):

	public static void main(String[] args) {
		String source = "A&BC&DEF&GH";//演示字符串数据源
		//设置limit=1时
		String [] segment = source.split("&", 1);//分割数组数据
		System.out.println("分割数组长度:"+segment.length);
		System.out.println("分割数组数据:"+Arrays.toString(segment));
	}
输出结果:
分割数组长度:1
分割数组数据:[A&BC&DEF&GH]

 看代码(3):

	public static void main(String[] args) {
		String source = "A&BC&DEF&GH";//演示字符串数据源
		//设置limit=2时
		String [] segment = source.split("&", 2);//分割数组数据
		System.out.println("分割数组长度:"+segment.length);
		System.out.println("分割数组数据:"+Arrays.toString(segment));
	}
输出结果:
分割数组长度:2
分割数组数据:[A, BC&DEF&GH]

 

 再来做一个测试,以下测试个人觉得对我的业务有用,看下面的代码:

	public static void main(String[] args) {
		String source = "A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC" +
				"&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&D" +
				"EF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&G" +
				"H&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&";//演示字符串数据源
		//设置limit=2时
		Long t1 = System.currentTimeMillis();
		String [] segment1 = source.split("&");//分割数组数据
		System.out.println("1消耗时间:"+String.valueOf(System.currentTimeMillis()-t1));
		
		Long t2 = System.currentTimeMillis();
		String [] segment2 = source.split("&", 2);//分割数组数据
		System.out.println("2消耗时间:"+String.valueOf(System.currentTimeMillis()-t2));
		
		System.out.println("分割数组长度:"+segment1.length);
		System.out.println("分割数组数据:"+Arrays.toString(segment1));
		System.out.println("分割数组长度:"+segment2.length);
		System.out.println("分割数组数据:"+Arrays.toString(segment2));
	}
输出结果:
1消耗时间:1
2消耗时间:0
分割数组长度:116
分割数组数据:[A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH, A, BC, DEF, GH]
分割数组长度:2
分割数组数据:[A, BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&A&BC&DEF&GH&]

 因为我只要第一条拆分出来的数据,所以嘿嘿,请楼下回答有什么好与坏处吧。

分享到:
评论

相关推荐

    浅谈java String.split丢失结尾空字符串的问题

    public String[] split(String regex, int limit) ``` `limit`参数控制了模式应用的次数,从而影响到结果数组的长度。当`limit`为正数时,模式最多应用`limit - 1`次,数组的长度不会超过`limit`,且最后一个元素会...

    java的String[] split 示例

    public String[] split(String regex, int limit) ``` 其中,`regex`参数是一个正则表达式,用来指定字符串的分割依据;`limit`参数(可选)用于限制结果数组的长度,如果设置了此参数,`split`方法将最多返回`...

    String类的intern、split方法

    split 方法的语法格式为:public String[] split(String regex, int limit),其中 regex 是正则表达式,limit 参数控制模式应用的次数,因此影响结果数组的长度。如果该限制 n 大于 0,则模式将被最多应用 n - 1 次...

    java中的split的用法

    2. `public String[] split(String regex, int limit)` - **参数说明**: - `regex`:一个正则表达式,用于定义如何分割字符串。 - `limit`:可选参数,表示返回的最大子串数量。如果设置了该参数,那么最多只...

    Java中Split的用法及注意

    该方法的语法为 `stringObj.split(regex, [limit])`,其中 `stringObj` 是要被分解的字符串对象或文字,`regex` 是定界正则表达式,`limit` 是可选项,用于限制返回数组中的元素个数。 Split 方法的返回值是一个...

    JAVA_split_用法

    2. `public String[] split(String regex, int limit)` - 除了正则表达式外,还接受一个`int`类型的`limit`参数,用于指定返回数组的最大长度。 #### 分割逻辑解析 当使用`split()`方法时,Java会根据提供的正则...

    JavaString常见操作.pdf

    - `split(String regex, int limit)`除了按照正则表达式分割字符串,还可以设置最多返回的子串数量。 - `join(CharSequence... elements)`是`String`类的静态方法,用于将多个字符串连接成一个字符串。 这些只是`...

    Java正则表达式详解.pdf

    `Pattern`类还提供了一些其他方法,如`matcher(CharSequence input)`用于创建`Matcher`对象,`split(CharSequence input)`和`split(CharSequence input, int limit)`用于按正则表达式分割字符串。 `Matcher`类是...

    Java分割字符串

    public String[] split(String regex, int limit) ``` `limit`参数控制结果数组的最大长度。当达到限制后,剩余的部分将被保留在最后一个元素中。 总结,Java中的字符串分割是通过`split()`方法实现的,依赖于正则...

    Java正则表达式之split()方法实例详解

    2. `public String[] split(String regex, int limit)`: 根据匹配给定的正则表达式来拆分此字符串,并且限制拆分的次数。 方法实例 下面是一个简单的示例程序,演示了split()方法的使用: ```java public class ...

    正则表达式

    - `String[] split(CharSequence input, int limit)`:根据此模式将指定的输入字符串分割成数组,并限制分割次数。 ##### 2. `Matcher` 类 `Matcher` 类用于执行与模式匹配相关的操作。它是 `Pattern` 类的补充,...

    Java正则表达式详解

    - `String[] split(CharSequence input, int limit)`:与 `split` 方法类似,但是可以限制分割的最大数量。 - **Matcher 类**:代表了一个与输入字符串匹配的对象。它是 `Pattern` 的匹配器,可以根据 `Pattern` ...

    Java SE基础.docx

    public String[] split(String regex, int limit); ``` **11. 大小写转换** 转换字符串为大写或小写。 ```java public String toUpperCase(); public String toLowerCase(); ``` #### 二、数组 数组是一种基本...

    JAVA中正则表达式的应用

    如果要限制分割次数,可以使用`split(CharSequence input, int limit)`方法。 正则表达式在Java中的应用广泛,可以用于数据验证(如邮箱、电话号码格式),文本搜索替换,以及复杂的数据提取等任务。掌握正则表达式...

    java split用法详解及实例代码

    2. `public String[] split(String regex, int limit)` 第一个版本的`split(regex)`方法没有限制分割次数,会根据正则表达式在字符串中找到的所有匹配项进行分割。第二个版本`split(regex, limit)`允许指定一个限制...

    JAVA正则表达式 Pattern和Matcher

    `Pattern.compile(String regex, int flags)`允许设置匹配标志,如`CASE_INSENSITIVE`(忽略大小写),`MULTILINE`(多行模式)和`DOTALL`(使`.`匹配任何字符,包括换行符)等。 一旦正则表达式被编译成`Pattern`...

    java的split方法使用示例

    `split()`方法的完整签名是`public String[] split(String regex, int limit)`。其中,`regex`参数是分隔符模式,可以是一个正则表达式;`limit`参数则是限制结果数组的大小。当`limit`大于0时,结果中的数组元素...

    Java正则表达式

    6. **`String[] split(CharSequence input)` 和 `String[] split(CharSequence input, int limit)`** - **用途**:根据正则表达式将输入字符串分割成数组。后者还可以限制分割次数。 - **示例**: ```java ...

    JAVA正则表达式--Pattern和Matcher

    6. **方法 split(CharSequence input) 和 split(CharSequence input, int limit)** - 功能:使用正则表达式作为分隔符,将输入字符串拆分成一个字符串数组。 - 示例代码: ```java String[] parts = pattern....

Global site tag (gtag.js) - Google Analytics