String类中分解字符串的split

形式:public String[ ] split (String regex)

作用:以regex作为分隔符分离字符串。

使用:

//1.以字符串作为分隔
String regex ="e";
String S ="hello";
String [] r=S.split(regex);//结果为分隔为r[0] ="h",r[1]="llo";


//2.以字符直接使用
String S ="hello";
String []r=S.split("e");//结果为分隔为r[0] ="h",r[1]="llo";


//3.正则表达式
String S ="asd1asd";
String regex="[\\d]"   //上//d代表任何一个0-9的数字
String []r =S。split(regex);//结果为r[0] ="asd",r[1]="asd";

split()方法认为分隔标记的左右两边都是单词。

如果左面不含任何字符的字符序列(长度为0的字符序列,即“”),

也认为是一个单词,但右边必须是含字符的字符序列。

辨别:

// 1.输入为:aaa
 String a =r.next();
     String []text=a.split("a");
     System.out.println(text.length);//输出:0 
         //左右两边都是空字符序列,不分配空间.
     for(int i=0;i<text.length;i++){
    	 System.out.println(text[i]);//不输出
     }


// 2.输入为:ab
 String a =r.next();
     String []text=a.split("a");
     System.out.println(text.length);//输出:2
         //形式为:| a b 以a为分隔符,|代表 "" 即 空字符序列。
         // 左边都是空字符序列,右边有字符序列,分隔字符。  
     for(int i=0;i<text.length;i++){
    	 System.out.println(text[i]);
         // 输出:
         //      b
         //输出后面是空字符"";


// 3.输入为:aab
 String a =r.next();
     String []text=a.split("a");
     System.out.println(text.length);//输出:3
         //形式为: | a | a b  以a为分隔符,|代表 "" 即 空字符序列。
         //原因同上。只有右边有字符序列就分隔。
         //每一个分隔字符“a”的两边都分配为“”,除了旁边为普通字符的分隔字符
         //如: ab  左边为"";而右边为"b";
     for(int i=0;i<text.length;i++){
    	 System.out.println(text[i]);
         // 输出:
         //      
         //      b
         //输出后面是空字符"";
     }

 

// 4.输入为:aaba
 String a =r.next();
     String []text=a.split("a");
     System.out.println(text.length);//输出:3
         //形式为: | a | a b  以a为分隔符,|代表 "" 即 空字符序列。
         //当分隔字符"a"作为末尾字符的时候不发挥分隔作用。
     for(int i=0;i<text.length;i++){
    	 System.out.println(text[i]);
         // 输出:
         //      
         //      b
         //输出后面是空字符"";
     }

 

 

// 5.输入为:baaaa
 String a =r.next();
     String []text=a.split("a");
     System.out.println(text.length);//输出:1
         //形式为:b  
         // 当分隔字符"a"的右边是空的字符序列时,连着的分隔字符序列都不发挥分隔作用。
         //无论后面多少个分隔字符都不分隔。
     for(int i=0;i<text.length;i++){
    	 System.out.println(text[i]);
         // 输出:b
     }

 

总结上文:我们可以发现:

1.只要分隔字符右边是有字符的字符序列,左边的每个分隔字符两边都发挥分隔作用。

   如果分隔字符旁边没有{有字符的字符序列}就产生"",(空的字符序列)。

2.只要分隔字符的右边是空的字符序列,就都不发挥分隔作用。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
split()方法是在JavaScript中最常用的字符串操作之一。它可以将一个字符串分割成字符串数组,通过指定分隔符来实现。 语法: ```javascript string.split([separator[, limit]]) ``` 参数说明: - separator(可选):指定分隔符,默认为逗号。 - limit(可选):指定返回的字符串数组的最大长度。 示例: ```javascript var str = "apple,banana,orange"; var arr = str.split(","); console.log(arr); // ["apple", "banana", "orange"] var str2 = "Monday Tuesday Wednesday"; var arr2 = str2.split(" "); console.log(arr2); // ["Monday", "Tuesday", "Wednesday"] ``` 如果不指定分隔符,则返回包含整个字符串的数组,如下所示: ```javascript var str = "JavaScript is fun"; var arr = str.split(); console.log(arr); // ["JavaScript is fun"] ``` 如果指定了一个空字符串作为分隔符,则字符串将被分解成单个字符,并返回数组,如下所示: ```javascript var str = "JavaScript is fun"; var arr = str.split(""); console.log(arr); // ["J", "a", "v", "a", "S", "c", "r", "i", "p", "t", " ", "i", "s", " ", "f", "u", "n"] ``` 如果指定了一个无法找到的分隔符,则返回包含原始字符串的数组,如下所示: ```javascript var str = "JavaScript is fun"; var arr = str.split("|"); console.log(arr); // ["JavaScript is fun"] ``` 注意点: - split()方法返回的是一个数组,不会改变原始字符串本身。 - 如果分隔符是一个正则表达式,则分隔符需要用括号括起来,否则括号内的内容视为分隔符的一部分。例如:str.split(/\s*;\s*/); - 如果分隔符是一个字符串,而该字符串正好等于原始字符串,则返回一个长度为1的数组,包含原始字符串。例如:str.split("JavaScript is fun")。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值