substring”函数的妙用:从字符串中提取子串的实用技巧

作者:林芝麻将开发公司 阅读:42 次 发布时间:2023-06-05 23:10:25

摘要:Substring函数的妙用:从字符串中提取子串的实用技巧在我们日常的程序开发中,字符串的处理是一个极其重要的部分。而在字符串的处理中,很多时候需要提取字符串的一部分,也就是我们常说的子串。针对这种情况,Java中提供了一个非常方便的函数——substring函数。这个函数可以...

Substring函数的妙用:从字符串中提取子串的实用技巧

substring”函数的妙用:从字符串中提取子串的实用技巧

在我们日常的程序开发中,字符串的处理是一个极其重要的部分。而在字符串的处理中,很多时候需要提取字符串的一部分,也就是我们常说的子串。针对这种情况,Java中提供了一个非常方便的函数——substring函数。这个函数可以让我们轻松地从原始字符串中提取出我们需要的子串,非常实用。本文将针对substring函数的用法和实用技巧进行详细的介绍和总结,希望能方便大家更好地使用这个函数。

1、substring函数的基本用法

在Java中,substring函数被定义在String类中,用于提取原始字符串的一部分作为新字符串。具体的函数用法如下:

public String substring(int beginIndex)

public String substring(int beginIndex, int endIndex)

其中,第一个函数根据指定的beginIndex值提取一个子串,beginIndex表示子串的起始位置。第二个函数则会在指定的beginIndex和endIndex之间提取子串,其中beginIndex包含,endIndex不包含。可以看到,substring函数是非常方便和实用的。

例如,有一个字符串str="Java Programming",我们希望提取其中的“Programming”一词作为新字符串。那么可以这样调用substring函数:

String newStr = str.substring(5);

这样,我们就能得到一个名为newStr的新字符串,其值为“Programming”。为什么是5呢?因为“Programming”一词在原字符串中的起始位置是5,我们只需要从这个位置开始提取即可。

如果我们想要提取“Java Program”这一段字符串呢?那么可以使用第二个函数进行提取:

String newStr = str.substring(0,11);

这个函数的参数已经说明得很清楚了,我们需要从原字符串的0位置开始提取,一直到第11个位置。一定要注意,endIndex不包含在子串中。这里的结果会是“Java Program”。

2、substring函数的应用实例

上面提到的两种基本用法只是substring函数的冰山一角。下面,我们将结合实际需求,展示substring函数的更多用法。

2.1、提取URL中的域名

在常规的Web开发中,经常需要从URL地址中提取域名。例如,将“http://www.baidu.com”中的“://”和“/”之间的部分提取出来,我们可以这样使用substring函数:

String url = "http://www.baidu.com";

int idx1 = url.indexOf("//");

int idx2 = url.indexOf("/", idx1+2);

String domain = url.substring(idx1+2, idx2);

这里的indexOf函数就是查找某个子串在另一个字符串中的位置,这个函数的返回值即是要提取的位置值。注意,我们在查找第二个“/”时从idx1+2开始查找,是为了跳过“://”这个部分。这样得到的domain即是“www.baidu.com”。

2.2、提取文件路径中的文件名

很多时候,我们需要从文件路径中提取出文件名,以进行一些操作。例如,我们需要从“C:\Test\example.txt”中提取出例子文件名example.txt,可以这样使用substring函数:

String filePath = "C:\Test\example.txt";

int idx = filePath.lastIndexOf("\\");

String fileName = filePath.substring(idx+1);

这里的lastIndexOf函数是查找一个字符在字符串中的最后一个位置,即可以得到所查找字符的末尾位置。因此,我们可以根据最后一个“\”的位置,提取文件名所在的部分。最后得到的fileName即是“example.txt”。

2.3、分割字符串

有一些需要将原字符串分割成多个子串的情况,substring函数也能够胜任。例如,我们需要将一个字符串“apple,orange,banana”中的三个水果名分割出来,可以这样使用substring函数:

String str = "apple,orange,banana";

int idx1 = 0;

int idx2 = str.indexOf(",");

while(idx2!=-1){

String fruit = str.substring(idx1,idx2);

System.out.println(fruit);

idx1 = idx2+1;

idx2 = str.indexOf(",",idx1);

}

String fruit = str.substring(idx1); //最后一个逗号后面的部分

System.out.println(fruit);

这里的算法其实很简单——我们不断地从头开始查找逗号的位置,然后将逗号前的子串提取出来进行操作。而最后一个逗号后面的部分是剩下的不被逗号包含的部分,所以单独处理。得到的输出结果将会是这样的:

apple

orange

banana

2.4、去掉字符串中的空格

对于一个字符串,我们想去掉其中的空格,可以使用substring函数和trim函数的组合,例如:

String str = " Hello World! ";

String newStr = str.trim().substring(6);

这里的trim函数用于去掉字符串两端的空格,然后使用substring提取想要的子串。最后得到的newStr将会是“World!”。

2.5、将大写字母转换为小写字母

在密码验证等情况下,我们需要将用户输入的大写字母全部转换为小写字母。那么可以使用substring函数和toLowerCase函数的结合:

String str = "ABCDEFG";

char first = str.charAt(0);

first = str.substring(0,1).toLowerCase().charAt(0);

这里的charAt函数用于获取字符串中指定位置的字符,toLowerCase函数用于将首字母转化为小写字母。注意,toLowerCase函数和substring函数都会返回新字符串,因此需要用charAt函数获取其中的单个字符。

3、结语

对于substring函数的讲解,本文仅仅是给出了一些例子和应用场景。实际上,substring函数还有非常多的使用方法,具体可参照Java官方文档。但总体而言,substring函数是非常实用的字符串处理函数,能够有效地解决我们在程序开发中遇到的各种字符串处理问题。希望本文能够对初学Java的读者有所帮助。

  • 原标题:substring”函数的妙用:从字符串中提取子串的实用技巧

  • 本文链接:https:////zxzx/12014.html

  • 本文由深圳飞扬众网小编,整理排版发布,转载请注明出处。部分文章图片来源于网络,如有侵权,请与飞扬众网联系删除。
  • 微信二维码

    CTAPP999

    长按复制微信号,添加好友

    微信联系

    在线咨询

    点击这里给我发消息QQ客服专员


    点击这里给我发消息电话客服专员


    在线咨询

    免费通话


    24h咨询☎️:166-2096-5058


    🔺🔺 棋牌游戏开发24H咨询电话 🔺🔺

    免费通话
    返回顶部