Java截取字符串的常见方法「建议收藏」

Java截取字符串的常见方法「建议收藏」转自:https://blog.csdn.net/zjx2016/article/details/74557301在项目中经常会遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法。方法一:通过split()将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。Stringstr="53285964@qq.co…

大家好,又见面了,我是你们的朋友全栈君。

在我们日常工作中经常遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法。

方法一:通过split()

此方法返回的是一个字符串数组类型。

1.只传一个参数:split(String regex)

将正则传入split(),根据给定正则表达式的匹配拆分此字符串。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。

String str = “HelloWorld@qq.com”;
String[] strs = str.split(“@”);
for(int i=0,i<strs.length;i++){

    System.out.println(strs[i].toString());
}

运行结果:

HelloWorld
qq.com

2.传入两个参数:split(String regex,int limit)

  • regex — 正则表达式分隔符。

  • limit — 分割的份数。

将正则和份数传入split()。根据给定正则表达式的匹配和想要分割的份数来拆分此字符串。

String str = “HelloWorld@qq@com”;
String[] strs = str.split(“@”,2);
for(int i=0,i<strs.length;i++){

    System.out.println(strs[i].toString());
}

运行结果:

HelloWorld
qq@com

方法二:通过subString()方法来进行字符串截取

1、只传一个参数:subString(int beginIndex)
将字符串从索引号为beginIndex开始截取,一直到字符串末尾。(注意索引值从0开始);

String sb = “HelloWorld@qq.com”;
String str = sb.substring(5);
System.out.println(str);

运行结果:

World@qq.com

2、传入两个参数:substring(int beginIndex, int endIndex)
从索引号beginIndex开始到索引号endIndex结束(返回结果包含索引为beginIndex的字符不包含索引endIndex的字符),如下所示:

String sb = “HelloWorld@qq.com”;
String str = sb.substring(0, 5);
System.out.println(str);

运行结果:

Hello

3、根据某个字符截取字符串
这里根据”@”截取字符串(也可以是其他子字符串)

String sb = “HelloWorld@qq.com”;
String str = sb.substring(0, sb.indexOf(“@”));
System.out.println(str);

运行结果:

HelloWorld

分析:indexOf(String str)方法返回的是子字符串第一次出现在字符串的索引位置,上面的代码返回的是@前面的字符。

 

参考原文出处:https://blog.csdn.net/zjx2016/article/details/74557301

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142283.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 从前慢-谷粒商城篇章2

    从前慢-谷粒商城篇章2谷粒商城持续更新中分布式基础篇 1 三级分类 1 1sql 脚本 DROPTABLEIFE pms category CREATETABLE pms category cat id bigint 20 NOTNULLAUTO INCREMENTCOM 分类 id name char 50 DEFAULTNULLC 分类名称 parent cid bigint 20 DEFAULTNULLC

    2025年6月22日
    3
  • 更新MacOS BigSur是遇到的常见问题及解决方案

    ​​有新系统更新是当然好,但它也可能会带来一些不兼容问题导致系统出现异常现象。比如:软件打不开,游戏卡顿,机器没声音等等….总是不会遇到这样那样的一些问题!就好比最近大热的Macbigsur亦是如此!如macOSBigSur无法下载安装启动等问题,应用程序、WiFi、蓝牙等无法运行,USB断开连接等等,通常可以直接解决。那么下面我们来探讨关于MacOSBIGSUR最常见的一些问题和解决修护办法!macOSBigSur无法下载如果您在下载BigSur时看到消息,提示“macOSBi

    2022年4月8日
    46
  • IAR for ARM介绍、下载、安装与注册

    IAR for ARM介绍、下载、安装与注册推荐分享一个大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net/strongerhuang推荐在我公众号「strongerHuang」和博客阅读该专栏1.EWSTM8系列教程01_IAR介绍、下载、安装和注册2.EWSTM8系列教程02_新建基础软件工程3.EWSTM8系列教程03_…

    2022年5月16日
    155
  • Android studio 入门教程(案例)

    Android studio 入门教程(案例) 1.创建一个Android项目,点击File-&gt;New-&gt;NewProject,其中的open是打开一个Android项目2.输入项目的名称test,此项目放在E盘下,然后点击Finish3.选择Android虚拟机的版本,版本越低运行起来越快,其他的无需勾选。 4.选择Android的模板,选择基础类android的空模板Empty…

    2022年6月7日
    38
  • html attrs属性,在Vue中详细介绍$attrs属性

    html attrs属性,在Vue中详细介绍$attrs属性这篇文章主要给大家介绍了关于Vuev2.4中新增的$attrs及$listeners属性的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着我来一起学习学习吧。前言多级组件嵌套需要传递数据时,通常使用的方法是通过vuex。如果仅仅是传递数据,而不做中间处理,使用vuex处理,未免有点杀鸡用牛刀。Vue2.4版本提供了另一种方法,使用…

    2022年10月17日
    3
  • although the false banknotes_to unleash this cpu full power

    although the false banknotes_to unleash this cpu full powerarch/x86/kernel/smpboot.cworker_thread()->process_one_work()->do_fork_idle()->fork_idle()->copy_process()firstly:thereisoneidletaskforeveryCPU.secondely:theidleproces…

    2025年11月19日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号