使用split分隔字符串

       在日常的编程中,我们经常会用到对字符串进行分隔的情况,比如将String str = "aaa#bbbb#cccc"使用split分隔,String[] strs = str.split("#")可以正确分隔。但当遇到特殊字符“^|.*”这四个时,如果直接使用split()则不能完成字符串的分隔,此时需要转译,用法为split("\\|")。

       当字符串中出现多个符号,需要使用split分隔时,比如String str = "aaa#bbbb|cccc*dddd",此时的分隔方法为split("#\\|\\*")。

       如果字符串中出现为空的字符串,如String str = "aaa##bbb#ccc";此时直接使用split("#")分隔则结果为"aaa","bbb","ccc",发现结果少了一个空字符串,此时应该使用split("#",-1),则分隔后的结果为"aaa","","bbb","ccc"。

### Java `split` 方法分割字符串 在 Java 中,可以利用 `split()` 方法来按照特定的分隔符将字符串拆分为子字符串,并返回这些子字符串组成的数组。当遇到特殊字符作为分隔符时,则需要注意转义。 对于简单的分隔符,比如逗号 `,` 或者连字符 `-` ,可以直接调用 `split()` 函数并传入相应的参数: ```java // 使用 "-" 作为分隔符进行分割 String str = "1-2-3"; String[] result = str.split("-"); System.out.println(Arrays.toString(result)); // 输出: [1, 2, 3] ``` 然而,在处理像句点 `.` 这样的正则表达式的元字符时,因为它们具有特殊的含义,所以需要对其进行转义才能被当作普通的字符对待[^1]。 ```java // 正确的方式是以 "\." 来表示实际的 "." 符号 String dotSeparated = "one.two.three"; result = dotSeparated.split("\\."); System.out.println(Arrays.toString(result)); // 输出: [one, two, three] ``` 如果希望保留空白项(即两个连续的分隔符之间没有任何内容),可以在传递给 `split()` 的第二个参数中设置负数或大于所需部分的数量,这样会使得结果数组包含所有的匹配项,包括那些为空的部分[^2]。 ```java // 当输入中有多个相邻的分隔符时,默认情况下会被忽略;可以通过指定 limit 参数改变此行为 String emptyItemsIncluded = ",a,,b,,,c"; result = emptyItemsIncluded.split(",", -1); System.out.println(Arrays.toString(result)); // 输出: [, a, , b, , , c] ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值