分割字符串的方法

简介: 分割字符串的方法

1、split:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。

示例1:

      String str="Java string split test";
      String[] strarray=str.split(" ");
      for (int i = 0; i < strarray.length; i++)
          System.out.println(strarray[i]);
将输出:
Java
string
split
test

示例2:

      String str="Java string split test";
      String[] strarray=str.split(" ",2);//使用limit,最多分割成2个字符串
      for (int i = 0; i < strarray.length; i++)
          System.out.println(strarray[i]);
将输出:
Java
string split test

示例3:

      String str="192.168.0.1";
      String[] strarray=str.split(".");
      for (int i = 0; i < strarray.length; i++)
          System.out.println(strarray[i]);
结果是什么也没输出,将split(".")改为split("\\."),将输出正确结果:
192
168
0
1

2、indexOf() :返回某个指定的字符串值在字符串中首次出现的位置(从左向右)。没有匹配的则返回-1,否则返回首次出现位置的字符串的下标值。

示例1:

let str = 'apple';
str.indexOf('a'); //0
str.indexOf('l'); //3
let str='2016';
str.indexOf(2); //0
str.indexOf('1'); //0
//说明indexOf会对字符串内的数字做简单的类型转换,把数字2转换成字符串'2'然后执行。

示例2:

//分割接口'http'用
let dell = []
let str = this.array[index].voices[inde]
// 分割字符串
  if (this.array[index].voices[inde].indexOf('http') == 0) {
  dell.push(this.array[index].voices[inde].substring(21,  this.array[index].voices[inde].length))}
    console.log(dell);
    innerAudioContext.src = 'https://new.kuxia.top' + dell;

3、substr(start,length):表示从start位置开始,截取length长度的字符串。

4、substring(start,end):表示从start到end之间的字符串,包括start位置的字符但是不包括end位置的字符。

示例1:

public static void main(String[] args){
    String test = "Hello World !";
    String subTest1 = test.substring(0,3);
    System.out.println("subTest:" + subTest1);
    String subTest2 = test.substring(0,test.length());
    System.out.println("subTest:" + subTest2);
}
运行结果如下:
subTest:Hel
subTest:Hello World !

5、lastIndexOf():方法返回从右向左出现某个字符或字符串的首个字符索引值(与indexOf相反)

示例:

let str = "Hello world!"
console.log(str.lastIndexOf("Hello"))//0
console.log(str.lastIndexOf("World"))//-1
console.log(str.lastIndexOf("world"))//6
相关文章
|
6月前
|
存储 安全 算法
做50个Java字符串题即精通字符串
字符串常量池是 Java 堆内存的一个特殊存储区域,用于存储字符串字面量和字符串常量。Java 虚拟机为了节省内存空间和提高效率,会确保所有的字符串字面量只包含一份,这样如果有多个引用指向相同的字面量,它们实际上会指向内存中相同的位置。字符串不可变性意味着一旦字符串对象被创建,它所包含的字符序列就不能被更改。Java 中的String对象是不可变的,因为不可变性可以提供编译时的优化、线程安全性,以及因为字符串常量池而更好的内存效率。
121 0
|
测试技术 索引
根据首尾字符串截取中间字符串
今天分享一个函数:虽然它非常简单,但是真的很好用!也很常用!比如 “我今天真的很高兴” 这句话,要把 `今天` 截取出来,我们可以直接调用函数拿到结果,不需要匹配索引、也不用写正则!
74 0
字符串截取
字符串截取
59 0
|
机器学习/深度学习 NoSQL 算法
字符串——344.反转字符串
本专栏按照数组—链表—哈希—字符串—栈与队列—二叉树—回溯—贪心—动态规划—单调栈的顺序刷题,采用代码随想录所给的刷题顺序,一个正确的刷题顺序对算法学习是非常重要的,希望对大家有帮助
字符串——344.反转字符串
|
开发者 Python
字符串分割相关的方法|学习笔记
快速学习字符串分割相关的方法
|
C++
C++常用字符串分割方法
来源:http://www.jb51.net/article/55954.htm 一、用strtok函数进行字符串分割 原型: char *strtok(char *str, const char *delim); 功能:分解字符串为一组字符串。 参数说明:str为要分解的字符串,delim为分隔符字符串。 返回值:从str开头开始的一个个被分
6558 0
字符串——541. 反转字符串 II
本专栏按照数组—链表—哈希—字符串—栈与队列—二叉树—回溯—贪心—动态规划—单调栈的顺序刷题,采用代码随想录所给的刷题顺序,一个正确的刷题顺序对算法学习是非常重要的,希望对大家有帮助
|
存储 安全 Java
【Java字符串】字符串虽简单,但这些你不一定知道
前言: 字符串是程序开发当中,使用最频繁的类型之一,有着与基础类型相同的地位(字符串不属于基本类型),甚至在 JVM(Java 虚拟机)编译的时候会对字符串做特殊的处理,比如拼加操作可能会被 JVM 直接合成为一个最终的字符串,从而到达高效运行的目的。