JAVA String 截取字符串的方法(含 substring 索引截取示例)

String.substring():用于返回一个字符串的子串用法如下:string.substring(from,to)其中from指代要抽去的子串第一个字符在原字符串中的位置to指代所要抽去的子字符串最后一个字符的后一位(这个参数可以不加)下面就对String.substring()做举例:1、string.substring(from):此时相当于从from位置截取到原字…

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

String.substring( ):用于返回一个字符串的子串

用法如下:string.substring(from, to)
其中from指代要抽去的子串第一个字符在原字符串中的位置
to指代所要抽去的子字符串最后一个字符的后一位(这个参数可以不加)

下面就对 String.substring( ) 做举例:

1、string.substring(from):此时相当于从from位置截取到原字符串末尾

1 var s = "hello";
2 s.substring(1);//就是从下标为1的字符(这里是'e')开始起到字符串末尾全部截取,最终获得子串"ello"

2、string.substring(from, to):从from位置截取到to-1的位置

1 var s = "hello";
2 s.substring(13);//相当于从位置为1的字符截取到位置为2的字符,得到子串为:"el"

索引截取示例:

public static void main(String[] args) { 
   
		String a="abcd-efg";
		String a1=a.substring(a.lastIndexOf("-")+1);
		String a2=a.substring(0,a.indexOf("-"));
		System.out.println(a1);//efg
		System.out.println(a2);//abcd
		String b="620303197010141212";
		if(b.length() == 18){ 
   
			String sex = b.substring(16, 17);
			System.out.println(sex);
			if(Integer.parseInt(sex)%2==0){ 
   
				enfore_sex.setText("女");
			}else{ 
   
				enfore_sex.setText("男");
			}
		}
 
		String c="陕C38205(黄)色";
		String c1=c.substring(c.lastIndexOf(")")+1);
		String c2=c.substring(0,c.indexOf("("));
		String c3=c.replace("(","");
		c3=c3.replace(")","");
		String c5=c.substring(c.indexOf("(")+1,c.indexOf(")"));
		System.out.println(c1);//色
		System.out.println(c2);//陕C38205
		System.out.println(c3);//陕C38205黄色
		System.out.println(c5);//黄
	}

String.substr( ):作用也是抽去一个子串

但是它和上面的String.substring( ) 有所不同

用法如下:string.substr(start, length)
start:指代截取子串开始下标
length:截取子串的长度(可省略)
1、string.substr(start, length):先举个例子来说明:

1 var s = “hello”;
2 s.substr(1,3);//从下标为1的字符开始截取3个字符长度,最后子串为:ell
补充两种特殊情况:
a、第二个参数超过了剩余字符长度

1 var s = “hello”;
2 s.substr(1,7)//这种情况下默认从,start位置到原字符串末尾,即返回:“ello”
b、第一个参数为负数
这种情况,从字符串尾部开始计算,-1指字符串最后一个字符,-2指倒数第二个字符…依次类推

1 var s = “hello”;
2 s.substr(-3,2)//即从倒数第三个字符开始起截取2个长度,获得:“ll”
2、string.substr(start):不带length参数,默认指代从start位置截取到字符串末尾

1 var s = “hello”;
2 s.substr(3)//“lo”

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

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

(1)
上一篇 2022年4月3日 下午4:35
下一篇 2022年4月3日 下午4:35


相关推荐

  • DDR3原理详解_判断能量信号和功率信号

    DDR3原理详解_判断能量信号和功率信号转自:http://www.360doc.com/content/14/0116/16/15528092_345730642.shtml 首先,我们先了解一下内存的大体结构工作流程,这样会比较容量理解这些参数在其中所起到的作用。这部分的讲述运用DDR3的简化时序图。   DDR3的内部是一个存储阵列,将数据“填”进去,你可以它想象成一张表格。和表格的检索原理一样,先指定一个行(Row),再指定一个…

    2025年7月30日
    3
  • PostGIS 报错libcrypto[通俗易懂]

    PostGIS 报错libcrypto[通俗易懂]说明在安装完Postgresql以后,打postgis扩展时,报错ERROR:couldnotloadlibrary”/usr/pgsql-12/lib/rtpostgis.so”:/usr/pgsql-12/lib/libpq.so.10:symbolX509_get_signature_nid,versionlibcrypto.so.10notdefinedinfilelibcrypto.so.10withlinktimereference出现问题环境

    2022年6月26日
    60
  • 最小二乘法(多元)推导

    最小二乘法(多元)推导最小二乘法(多元)推导1声明本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理。2最小二乘法简介最小二乘法是一种优化的方法,它主要是通过最小化误差的平方和来做函数拟合的方法。3最小二乘法多元推导有如下回归模型其中b0,b1,…bp,μ2×1,x2,…xp都是与无关的未知参数。这里设是一个样本。这里令残差平方和的表达式为…

    2022年5月13日
    69
  • label 换行

    label 换行br 当我们在 UI 上创建一个 Label 的时候 有时候我们会随时改变 Label 的 Text 值 然而当值过长 我们又不想改变 Label 的长度值来自动适应 Label 显示的时候 我们就能会需要创建一个具有换行效果的 Label 要实现有换行效果的 Label 只需要在创建 Label 时 给它的 Style 设置为 SWT Wrap 然后对其进行 pack 操作即可 br br 例如 br Labelmylabel toolkit createLabel client xxxxxx SWT WRAP

    2026年3月20日
    2
  • 星火投标

    星火投标

    2026年3月14日
    3
  • 大厂工作经验重要吗_大厂能学到技术吗

    大厂工作经验重要吗_大厂能学到技术吗很多小伙伴问我进大厂到底需要怎样的技术能力,经过几天的思考和总结,终于梳理出一份相对比较完整的技能清单,太顶了,建议收藏!!

    2022年8月13日
    5

发表回复

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

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