行业资讯 2025年08月6日
0 收藏 0 点赞 288 浏览 2043 个字
摘要 :

文章目录 1.String.split() API 1.1. 语法 1.2. 抛出 PatternSyntaxException 1.3. 不接受 ‘null’ 2.使用 Java 程序分割字符串 2.2. 通过空格进行分割 2……




  • 1.String.split() API
    • 1.1. 语法
    • 1.2. 抛出 PatternSyntaxException
    • 1.3. 不接受 ‘null’
  • 2.使用 Java 程序分割字符串
    • 2.2. 通过空格进行分割
    • 2.3. 通过逗号进行分割
    • 2.4. 使用多个分隔符进行分割
  • 3.将字符串分割成最多 N 个令牌
  • 总结

String.split() 方法会在给定的字符串中根据匹配给定正则表达式模式的定界符进行分割,然后返回分割后的字符串数组。

正则表达式必须是一个有效的模式,如果需要的话,请记得转义特殊字符。

String str = \"A-B-C-D\";
String[] strArray = str.split(\"-\");    // [A, B, C, D]

1.String.split() API

1.1. 语法

split() 方法是重载的,接受以下参数:

  • regex – 分隔的正则表达式。
  • limit – 控制模式应用的次数,因此影响结果数组的长度。
    • 如果 limit 是正数,则模式最多会应用 limit – 1 次。结果数组的长度不会超过 limit,并且数组的最后一个条目将包含最后一个匹配的定界符之后的所有输入。
    • 如果 limit 为零,则结果数组可以是任何大小。尾部的空字符串将被丢弃。
    • 如果 limit 为负数,则结果数组可以是任何大小。
public String[] split(String regex);
public String[] split(String regex, int limit);

1.2. 抛出 PatternSyntaxException

请注意,如果正则表达式的语法无效,split() 方法会抛出 PatternSyntaxException 异常。在给定的示例中,”[” 是一个无效的正则表达式。

// 无效正则示例,直接抛出异常
String[] strArray = \"hello world\".split(\"[\");

1.3. 不接受 ‘null’

该方法不接受 ‘null’ 参数。如果方法参数为 ‘null’,则会引发 NullPointerException 异常。因此,在使用 split() 方法时,请确保不将 ‘null’ 作为参数传递。

2.使用 Java 程序分割字符串

2.1. 使用指定的分隔符进行分割 以下的Java程序根据给定的分隔符连字符 “-” 进行字符串分割。

Split a string with delimiter hyphenString str = \"how to do-in-java-provides-java-tutorials\";
String[] strArray = str.split(\"-\");  //[how to do, in, java, provides, java, tutorials]

2.2. 通过空格进行分割

以下的Java程序使用分隔符 “\\s” 来根据空格进行字符串分割。要根据所有空白字符(空格、制表符等)进行分割,请使用分隔符 “\\s+”。

// 根据空格分割
String str = \"how to do injava\";
String[] strArray = str.split(\"\\\\s\");  //[how, to, to, injava]

2.3. 通过逗号进行分割

以下是一个Java程序,用于根据逗号分隔符对字符串进行分割。

// 用逗号分割
String str = \"A,B,C,D\";
String[] strArray = str.split(\",\");  //[A,B,C,D]

2.4. 使用多个分隔符进行分割

以下是一个Java程序,用于使用多个分隔符进行字符串分割。在多个分隔符之间使用正则表达式 OR 运算符 ‘|’。

在给定的示例中,我使用了两个分隔符,一个连字符和一个点号。

// 使用-和.分割
String str = \"www-pan-zi.ye.com\";
String[] strArray = str.split(\"-|\\\\.\"); //[www, pan, do, zi, ye, com]

3.将字符串分割成最多 N 个令牌

该方法的这个版本也会将字符串分割,但是令牌的最大数量不能超过 limit 参数。一旦方法找到了令牌的数量,剩余的未分割字符串将作为最后一个令牌返回,即使它可能包含分隔符。

以下是一个Java程序,以这种方式按空格分割字符串,令牌的最大数量不能超过 5。

String str = \"how to do in java provides java tutorials\";

String[] strArray = str.split(\"\\\\s\", 5);

System.out.println(strArray.length);  //5
System.out.println(Arrays.toString(strArray));  //[how, to, do, in, java provides java tutorials]

总结

这个Java字符串教程教会了我们如何使用 Spring.split() API 的语法和用法,并提供了易于理解的示例。我们学会了使用不同的分隔符来分割字符串,如逗号、连字符,甚至在一个字符串中使用多个分隔符。

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/9170.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号