转载自: https://blog.csdn.net/qq_50652600/article/details/123170844

优美格式请跳转上述链接查看 。

1.获取String的相关信息功能

1)length():获取该字符串长度

String str ="group-banner-top-";

int length = str.length();

System.out.println(length);

运行结果:17

2)charAt(intindex):获取指定索引处字符

String str ="group-banner-top-";

System.out.println(str.charAt(7));

运行结果:a

3)indexOf(Stringstr):获取指定字符在该字符串第一次出现的位置

String str ="group-banner-top-";

int index = str.indexOf("a");

System.out.println(index);

运行结果:7

4)indexOf(Stringstr, int fromIndex) 获取指定字符从某处开始第一次出现的位置

String str ="graap-banner-top-";

int index =str.indexOf("a",5);

System.out.println(index);

运行结果:7

5)substring(intbeginIndex) 从beginIndex开始位置截取字符串

String str ="graap-banner-top-";

String substring = str.substring(1);

System.out.println(substring);

运行结果:raap-banner-top-

6)substring(intbeginIndex, int endIndex) 从beginIndex开始,到endIndex结束截取字符串。包括start,不包括end

String str ="graap-banner-top-";

String substring = str.substring(1,3);

System.out.println(substring);

运行结果:ra

2.String的判断功能

1)equals(ObjectanObject):比较字符串内容是否相同

String str = "fghjkvja女大三你看看电视";

System.out.println("fghjkvja女大三你看看电视".equals(str));

System.out.println("hhhjjj".equals(str));

运行结果:true

false

2)equalsIgnoreCase(StringanotherString) :比较字符串内容是否相同,忽略大小写

String str = "ffffff";

System.out.println("FFFFFF".equalsIgnoreCase(str));

运行结果:true

3)startsWith(Stringprefix):判断字符串是否以指定的字符开头

String str = "fff白居寺fff";

System.out.println(str.startsWith("fff"));

运行结果:true

4)startsWith(Stringprefix, int toffset):判断字符串是否以指定的字符开头,参数toffest指定从哪个下标开始

String str = "fff白居寺fff";

System.out.println(str.startsWith("白",3));

System.out.println(str.startsWith("白",4));

运行结果:true

false

5)endsWith(Stringsuffix):判断字符串是否以指定的字符结尾

String str = "fff白居寺fff";

System.out.println(str.endsWith("白"));

运行结果:false

6)isEmpty():判断字符串是否为空

String str = "";

System.out.println(str.isEmpty());

运行结果:true

3.String字符中转换方法

1)StringtoLowerCase():将字符串转为小写

String str = "HDFNNCVNDK";

System.out.println(str.toLowerCase());

运行结果:hdfnncvndk

2)StringtoUpperCase():将字符串转大写

String str = "kkskksfhdf";

System.out.println(str.toUpperCase());

3)char[] toCharArray():将字符串转为字符数组

String str = "HDFNNCV把接口顶你个肺NDK";

char[] chars = str.toCharArray();

System.out.println(chars);

运行结果:HDFNNCV把接口顶你个肺NDK

4.常用方法

1)Stringtrim():去除字符串两端的空格

String str = " kkskksfhdf ";

System.out.println(str);

System.out.println(str.trim());

运行结果: kkskksfhdf

kkskksfhdf

2)CharSequencesubSequence(int beginIndex, int endIndex):截取字符串指定位置组成一个新的字符串

String str = " kkskaaaaksfhdf";

System.out.println(str.subSequence(1,5));

运行结果:kksk

3)String replace(CharSequence target, CharSequence replacement)

String str ="kkskaaaaksfhdf";

System.out.println(str.replace("a","o"));

运行结果:kkskooooksfhdf

4)StringreplaceAll(String regex, String replacement):用新的内容替换全部就内容

String str ="kkskaaaaksfhdf";

System.out.println(str.replaceAll("a","o"));

运行结果:kkskooooksfhdf

5)StringreplaceFirst(String regex, String replacement):替换首个满足函数的内容

String str ="kkskaaaaksfhdf";

System.out.println(str.replaceFirst("k","o"));

运行结果:okskaaaaksfhdf

注意:之前用replaceFirst的时候遇到了一些问题:特意写出来分享下:

想把22.22.02.23切割成2222.02.23的形式,就想到了replaceFirst这个方法,但是结果却出乎意料。

String str = "22.22.02.23";

String s = str.replaceFirst(".","");

System.out.println(s);

运行结果:2.22.02.23

可以发现,它将我的第一个字符给切割了,并没有切割第一个.的字符。因为这个时候"."相当于元字符,匹配除“\n”和"\r"之外的任何单个字符。所以就把第一个字符切割了。

String str = "22.22.02.23";

String s =str.replaceFirst("\\.", "");

System.out.println(s);

运行结果:2222.02.23

6)lastIndexOf(Stringstr):返回指定字符出现最后一次的下标

String str ="kkskaaaaksfhdf";

System.out.println(str.lastIndexOf("k"));

运行结果:8

7)contains(CharSequences):字符串中是否包含指定字符

String str ="kkskaaaaksfhdf";

System.out.println(str.contains("aa"));

运行结果:true

8)Stringconcat(String str):在原有字符串基础上加上指定字符串

String str = "大";

System.out.println(str.concat("逼兜"));

运行结果:大逼兜

5.平时开发中常见问题

1)获取第一个“-”后面(前面)的所有字符

    public static void main(String[] args) {String str = "group-banner-top-http://pic/test/20220225092606e0dc59c3ef8c915b8fbe9f99153b7ef9";//获取第一个"-"后面的所有字符串int index = str.indexOf("-");System.out.println("第一个字符下标:"+index);String after = str.substring(index+1);System.out.println("第一个-后面的字符:"+after);String before = str.substring(0,index);System.out.println("第一个-前面的字符:"+before);}

其实获取第一个标识符的前面和后面的所有内容还是比较容易的。

2)获取第二个“-”后面的所有字符

    public static void main(String[] args) {String str = "group-banner-top-http://pic/test/20220225092606e0dc59c3ef8c915b8fbe9f99153b7ef9";//获取第一个"-"后面的所有字符串int index = str.indexOf("-");System.out.println("第一个字符下标:"+index);String after = str.substring(str.indexOf("-",str.indexOf("-")+1)+1);System.out.println("第二个-后面的字符:"+after);String before = str.substring(0,str.indexOf("-",str.indexOf("-")+1));System.out.println("第三个-前面的字符:"+before);}

获取第二个标识符后面的内容,只需要拿到第一个标识符的初始位置并且加1,它就会从后开始切割

3)获取第三个“-”后面的所有字符

    public static void main(String[] args) {String str = "group-banner-top-http://pic/test/20220225092606e0dc59c3ef8c915b8fbe9f99153b7ef9";//获取第一个"-"后面的所有字符串int index = str.indexOf("-");System.out.println("第一个字符下标:"+index);String str1 = str.substring(index+1); //先切割一遍,使得字符串前面变的只有两个两个“-”,然后就可以用上一种获取第二个字符的方法了System.out.println("切割掉第一个‘-’和前面的字符串剩下的字符串为:"+str1);String after = str1.substring(str1.indexOf("-",str1.indexOf("-")+1)+1);System.out.println("第三个‘-’后面的字符:"+after);int length =  (str.length() - after.length()) - 1;String before1 = str.substring(0,length);System.out.println("第三个‘-’前面的字符:"+before1);}

获取第三个标识符的时候,因为我们不清楚前面字符串的长度,所以只需要先切割一遍,再按照获取第二个标识符那样就好了

String截取指定字符前面(后面)所有字符和String的常用方法相关推荐

  1. String截取指定字符

    截取指定字符类 /*** 截取指定字段*/ public class SubString {public static String subString(String str, String strS ...

  2. (Java)String截取指定字符前面(后面)所有字符和String的常用方法

    目录 1 获取String的相关信息功能 2 String的判断功能 3 String字符中转换方法 4 常用方法 5 平时开发中常见问题 1 获取String的相关信息功能 1)length():获 ...

  3. String截取指定内容

    示例 String result ="<HandKey>截取指定内容</HandKey>";String strStart = "<Hand ...

  4. c++string替换指定位置字符_Lua 字符串

    --[[ Lua 字符串 字符串或串(String)是由数字.字母.下划线组成的一串字符 Lua语言中字符串可以使用以下三种方式来表示 ]] -- 单引号的一串字符 -- 双引号的一串字符 -- [[ ...

  5. php 截取某个字符,PHP_php截取指定2个字符之间字符串的方法,本文实例讲述了php截取指定2个 - phpStudy...

    php截取指定2个字符之间字符串的方法 本文实例讲述了php截取指定2个字符之间字符串的方法.分享给大家供大家参考.具体如下: 在php中只要判断字符串1与字符串2之前的一个stripos位置然后再使 ...

  6. mysql截取前几个字符串_mysql中截取指定字符前后的字符串

    使用SUBSTRING_INDEX()函数 substring_index(str,delim,count) str:要处理的字符串 delim:分隔符 count:分隔符计数 例子 取出上述表中数组 ...

  7. js 截取指定字符前的字符

    // **截取指定字符前的字符**getStr(string, str) {var str_before = string.split(str)[0];var str_after = string.s ...

  8. JS字符串截取 “指定字符” 前面和后面的内容!

    JS字符串截取 "指定字符" 前面和后面的内容! var string= "07/12" var before = string.split('/')[0] v ...

  9. Python字符串中截取指定关键词的前后字符

    思路: 正则表达式+ 切片操作 一.找出关键词的位置 二.利用字符串的切片功能 目前想到有三种情况: 1.当关键词位于开头时,从下标为0的开始切片 2.当关键词位于结尾时,切片取到最后一个字符 3.当 ...

最新文章

  1. Maven系列三Maven内置变量
  2. gcc创建静态库和共享库
  3. JS函数式编程概念理解:函子(Functor)
  4. 利用SQL模糊匹配来验证字段是否是日期格式
  5. 【NLP】基于GloVe词向量的迁移学习
  6. python面向对象(part1)--类和对象
  7. python 对象引用、可变性 和 垃圾回收
  8. 用python画渐变的圆_Python成像库(PIL)绘图 – 带渐变的圆角矩形
  9. xpath中如何使用变量
  10. 剑指Offer之翻转单词顺序列
  11. 国家机构评测主流电视:长虹人工智能语音识别第一
  12. sourcetree windows下中文乱码
  13. IntelliJ IDEA 创建 maven 创建java web 项目
  14. 【Gym - 101848D】XOR【多个数异或的典型问题】【费马小定理】
  15. 如何关闭135,139,445高危端口
  16. 简单理解工作量单位:人月、人日、人时
  17. 数学分析:有理数的稠密性证明
  18. SQL文件的导入与导出
  19. 移动宽带光猫真正后台上网设置
  20. 我看 - 《梦断紫禁城》 的一些感想

热门文章

  1. 推荐一个赚钱平台,100%能赚钱(合法 长久 稳定)
  2. 微博插件-微博图片全显示(页面样式本人优化版)
  3. 28379D第四章的ROM Code and Peripheral Booting
  4. Vue微信网页开发,输入法顶开一部分屏幕的解决办法
  5. 你想要的宏基因组-微生物组知识全在这(1904)
  6. Python 读取Excel地点名称通过百度地图获取行政区划信息
  7. ROS配置和使用“北通”无线手柄,主从机远程控制JP-Chassis底盘
  8. 1-图像增强(Part1)
  9. net logon服务无法启动
  10. 计算机机房门尺寸,门的尺寸怎么量呢