相关疑难解决方法(0)

Java String的split方法忽略空子串

今天发生在我身上的java的行为String.split()很奇怪.

实际上我想将一个字符串拆分"aa,bb,cc,dd,,,ee"为数组,.split(",")这给了我一个["aa","bb","cc","dd","","","ee"]长度为7 的String数组.

但是当我尝试将String拆分"aa,bb,cc,dd,,,,"为数组时,这给了我一个长度为4的数组意味着只["aa","bb","cc","dd"]拒绝所有下一个空白字符串.

我想要一个将String拆分"aa,bb,cc,dd,,,,"为数组的过程["aa","bb","cc","dd","","",""].

java.lang.String api有可能吗?提前致谢.

java regex arrays string split

9
推荐指数
1
解决办法
1万
查看次数

string类的split()的特殊行为

据我所知,以下程序应0,0作为输出打印.

但是,当我运行这个程序时,我得到1,0了输出.

public class Test1 {
    public static void main(String[] args) {
        System.out.println("".split(";").length); //1
        System.out.println(";".split(";").length);//0
    }
}
Run Code Online (Sandbox Code Playgroud)

请帮我理解这里发生了什么?

java string

9
推荐指数
2
解决办法
253
查看次数

空字符串和单个分隔符字符串上的字符串拆分行为

这是这个问题的后续行动.

问题在于下面的第二行.

"".split("x");   //returns {""}   // ok
"x".split("x");  //returns {}   but shouldn't it return {""} because it's the string before "x" ?
"xa".split("x"); //returns {"", "a"}    // see?, here "" is the first string returned
"ax".split("x"); //returns {"a"}
Run Code Online (Sandbox Code Playgroud)

java scala

8
推荐指数
2
解决办法
1552
查看次数

字符串数组长度显示为1,即使数组在以逗号(,)分割后调用为空

这是我的代码:

serialNumbers = "";

String[] serialArray = serialNumbers.split(",");

int arrayLength = serialArray.length;
Run Code Online (Sandbox Code Playgroud)

即使serialArray中没有值,arrayLength也会显示1.我希望在这种情况下长度应该返回0.

java arrays

8
推荐指数
2
解决办法
6412
查看次数

StringOps.split(String,Int)中第二个参数的含义

我试图拆分一个字符串并保留空字符串.幸运的是,我找到了一个很有前景的解决方案,它给了我预期的结果,如下面的REPL会话描

scala> val test = ";;".split(";",-1)
test: Array[String] = Array("", "", "")
Run Code Online (Sandbox Code Playgroud)

我很好奇第二个参数实际上做了什么并潜入scala文档但除此之外什么都没找到:

在此输入图像描述

在REPL解释器中我只能获得以下信息:

scala> "asdf".split
Run Code Online (Sandbox Code Playgroud)

TAB

def split(String): Array[String]        
def split(String, Int): Array[String]
Run Code Online (Sandbox Code Playgroud)

问题 是否有人为这些记录严重的参数提供备用文件来源?或者有人可以解释这个2dn参数对这个特定功能的作用吗?

scala

6
推荐指数
1
解决办法
3366
查看次数

在clojure中为什么从空文件中拆分字符串会返回1个元素?

考虑以下:

=> (even? (count []))
true
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.现在考虑(假设我的文件是空的):

(odd? (count (str/split (slurp my-file) #"\|")))
true
Run Code Online (Sandbox Code Playgroud)

错误...为什么从空文件返回的向量不均匀(零)?

=>(str/split (slurp my-file) #"\|")
[""]
Run Code Online (Sandbox Code Playgroud)

啊,有人可以解释为什么在这种情况下返回一个空字符串?

我正在尝试确定文件中是否有奇数记录.

string file-io vector clojure

5
推荐指数
1
解决办法
538
查看次数

标签 统计

java ×4

string ×3

arrays ×2

scala ×2

clojure ×1

file-io ×1

regex ×1

split ×1

vector ×1