`

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 正则表达试

    import org.apache.oro.text.regex.MalformedPatternException; import org.apache.oro.text.regex.MatchResult; import org.apache.oro.text.regex.Pattern; import org.apache.oro.text.regex.PatternCompiler; ...

    public static String[] split(String s, String regex)

    public static String[] split(String s, String regex) s参数为待拆分字符串, regex参数有两种格式: 单字符的字符串(长度1),功能如下:split(“ab#12#453”, “#”) 返回带5个元素的数组:ab, #, 12, #, 453 ...

    StringAPI.java

    String[] split(String regex) boolean contains(CharSequence s):当且仅当此字符串包含指定的 char 值序列时,返回 true int indexOf(String str):返回指定子字符串在此字符串中第一次出现处的索引 int ...

    String.prototype.replaceAll:适用于String.prototype.replaceAll ESnext提案的符合规范的polyfill

    string.prototype.replaceall 用于String.prototype.replaceAll的ES Proposal规范填充程序。 如果不可用或不String.prototype.replaceAll调用其“ shim”方法对String.prototype.replaceAll进行填充。 该软件包...

    String.prototype.matchAll:适用于String.prototype.matchAll ESnext提案的符合规范的polyfill

    string.prototype.matchall 用于String.prototype.matchAll的ES Proposal规范填充程序。 如果不可用或不String.prototype.matchAll则调用其“ shim”方法对String.prototype.matchAll进行填充。 该软件包实现了...

    java统计字符串出现次数算法--StringCounter(算法源码)

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class StringCounter { /** * 正则统计字符串出现次数 * * @param source * @param regexNew * @return int */ public ...

    易语言源码RegEx.rar

    易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar 易语言源码RegEx.rar

    java 正则表达式 Java Regex.rar

    java 正则表达式 java 正则表达式 java 正则表达式 java 正则表达式 java 正则表达式 java 正则表达式 java 正则表达式

    Java.Regex.Crash.Course.B015YXJCMY.epub

    Chapter 3: Java Regex Classes Chapter 4: Regex for Username Chapter 5: Regex for Password Chapter 6: Regex for Email Chapter 7: Regex Color Coding Chapter 8: Regex for Image Files Chapter 9: Regex for...

    article-regex-primer.rar_The Few

    Reading the javadoc forjava.util.regex. Pattern is a must to see how the Java regex patterns aredi erent from other languages such as Perl. Most of the functions discussed herin are from thejava....

    Filter过滤机制详解

    过滤器的原理解析,以及使用代码实例

    易语言模块RegEx.rar

    易语言模块RegEx.rar 易语言模块RegEx.rar 易语言模块RegEx.rar 易语言模块RegEx.rar 易语言模块RegEx.rar 易语言模块RegEx.rar

    易语言模块RegEx1.rar

    易语言模块RegEx1.rar 易语言模块RegEx1.rar 易语言模块RegEx1.rar 易语言模块RegEx1.rar 易语言模块RegEx1.rar 易语言模块RegEx1.rar

    利用开源控件,绘制折线图,功能灵活

    l13 = regex.Replace(sr.ReadLine(), " ");//读要素行 ll = regex.Replace(sr.ReadLine(), " ");//读第一行数据 int cc = ll.Split(' ').Length; for (int i = 1; i ; i++) { ht.Add(l13.Split(' ')[i], ll....

    Packt.Java.9.Regular.Expressions

    You will begin by discovering what regular expressions are and how they work with Java. This easy-to-follow guide is a ... Finally, you will master tips, tricks, and best practices in regex with Java

    i18n Tools helper

    import java.util.regex.Matcher; import java.util.regex.Pattern; /** * . <p/> @author George Wei */ public class I18nTool { private static final String TEMP_RES_ENCODING = "gbk"; private static ...

    pattern-dissector:探索 java.util.regex.Pattern 类的内部结构

    目前,解析器仅在 Java 虚拟机 (JVM) 配置为使用(JCL) 的参考实现,即 JCL 时才起作用。 对于其他 2 个已知的 JCL: 当前不支持 ,但将来可能会支持。 目前不支持 ,也没有计划支持它,因为该项目已于 2011 年...

    C# Split分隔字符串的应用(C#、split、分隔、字符串)

    string[] sArray=Regex.Split(str,”js”,RegexOptions.IgnoreCase); foreach (string i in sArray) Response.Write(i.ToString() + “ ”); 输出结果: aaa ccc 2、用多个字符来分隔: 代码如下:string str=”...

    WAPLogin.rar_delphi RegEx_delphi TRegEx_wapLogin

    模仿百度WAP登陆 内附Perl正则使用实例

    java SE API

    java.util.regex java.util.zip javax.accessibility javax.activity javax.crypto javax.crypto.interfaces javax.crypto.spec javax.imageio javax.imageio.event javax.imageio.metadata javax.imageio...

Global site tag (gtag.js) - Google Analytics