Java中String.split()怎么使用
一、split(regex,limit)
首先是带有两个参数的split方法:
作用:
将以给定正则表达式(regex)的字符串分隔开来
第一个参数是传入字符类型的分隔符,如 “,” 等(可以是任何字符串)
第二个参数传入整型的limit,代表的是将此字符串分割成n部分(这里的n就是limit).
返回值:
此方法返回的数组包含此字符串的每个子字符串,这些子字符串以匹配到的正则表达式(就是以输入的第一个参数regex)作为结束,或由字符串的结尾作为结束。
注意事项:
数组中的子字符串按照它们在这个字符串中出现的顺序排列。
如果输入的regex不匹配字符串里面的任何字符,那么结果数组只有一个元素,即这个字符串。(就是若字符串里面没有出现输入的regex参数)
如果在字符串的开头有一个正数的匹配(就是字符串开头有>0个的regex分隔符),那么在结果数组的开头会包含一个空的前导子字符串.
public class test { public static void main(String[] args) { String str = ",,1,2,3,4"; // 注意这里字符串开头就匹配到了逗号 String[] s = str.split(",",10);// 这里先取10,后文介绍第二个参数 for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
运行结果:
第一个逗号前面会有出现一个空的子字符串
limit参数控制应用模式的次数,因此会影响结果数组的长度。(这里的意思就是limit的取值控制了结果数组的长度)
对以上解读如下: (1) 如果limit输入的是一个正数, 那么该模式将最多应用limit - 1次(就是说只会用输入的regex去字符串里面匹配limit-1次),数组的长度将不大于limit,并且数组的最后一个条目将包含最后一个匹配的分隔符之外的所有输入(就是说他分隔的模式是从前逐个往后的).给个代码便于大家理解:
public class test { public static void main(String[] args) { String str = "1,2,3,4"; String[] s = str.split(",",2);//这里输入limit为2,即分成2部分 for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
运行结果:
字符串被分隔成2个子字符串,分隔模式是从前往后的
(2) 如果输入的limit为零,则模式将被应用尽可能多的次数,结果数组可以有任何长度,而尾部的空字符串将被丢弃. (就是匹配字符串里面所有的regex分隔符),关于空字符串被丢弃,代码如下:
public class test { public static void main(String[] args) { String str = "1,2,3,4,,,";// 这里后面逗号之间的空字符串将被丢弃 String[] s = str.split(",",0); for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
运行结果:
尾部的空字符串将不会出现在结果数组里
(3) 如果输入limit的值为负数,则模式将被应用尽可能多的次数,数组可以有任何长度。(尾部的空字符串也不会被丢失噢)
public class test { public static void main(String[] args) { String str = ",1,2,3,4,"; String[] s = str.split(",",-1);//limit值为负数 for (String string : s) { System.out.println("子字符串"+string); } System.out.println(s.length); } }
运行结果:
字符串的尾部空字符串不会被丢失
二、split(regex)
接下来只带有一个参数的split方法就容易了,就是默认limit的值为0.
该方法的工作原理就是用给定regex参数和一个limit参数默认为0来调用两个参数的split方法。因此,结果数组中不包含尾随的空字符串。
以上是Java中String.split()怎么使用的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7

Java 8引入了Stream API,提供了一种强大且表达力丰富的处理数据集合的方式。然而,使用Stream时,一个常见问题是:如何从forEach操作中中断或返回? 传统循环允许提前中断或返回,但Stream的forEach方法并不直接支持这种方式。本文将解释原因,并探讨在Stream处理系统中实现提前终止的替代方法。 延伸阅读: Java Stream API改进 理解Stream forEach forEach方法是一个终端操作,它对Stream中的每个元素执行一个操作。它的设计意图是处

PHP和Python各有优势,选择应基于项目需求。1.PHP适合web开发,语法简单,执行效率高。2.Python适用于数据科学和机器学习,语法简洁,库丰富。

PHP适合web开发,特别是在快速开发和处理动态内容方面表现出色,但不擅长数据科学和企业级应用。与Python相比,PHP在web开发中更具优势,但在数据科学领域不如Python;与Java相比,PHP在企业级应用中表现较差,但在web开发中更灵活;与JavaScript相比,PHP在后端开发中更简洁,但在前端开发中不如JavaScript。

PHP和Python各有优势,适合不同场景。1.PHP适用于web开发,提供内置web服务器和丰富函数库。2.Python适合数据科学和机器学习,语法简洁且有强大标准库。选择时应根据项目需求决定。

PHPhassignificantlyimpactedwebdevelopmentandextendsbeyondit.1)ItpowersmajorplatformslikeWordPressandexcelsindatabaseinteractions.2)PHP'sadaptabilityallowsittoscaleforlargeapplicationsusingframeworkslikeLaravel.3)Beyondweb,PHPisusedincommand-linescrip

PHP成为许多网站首选技术栈的原因包括其易用性、强大社区支持和广泛应用。1)易于学习和使用,适合初学者。2)拥有庞大的开发者社区,资源丰富。3)广泛应用于WordPress、Drupal等平台。4)与Web服务器紧密集成,简化开发部署。

PHP适用于Web开发和内容管理系统,Python适合数据科学、机器学习和自动化脚本。1.PHP在构建快速、可扩展的网站和应用程序方面表现出色,常用于WordPress等CMS。2.Python在数据科学和机器学习领域表现卓越,拥有丰富的库如NumPy和TensorFlow。
