当前位置: 首页 > 知识库问答 >
问题:

如何拆分保留空元素的字符串?[重复]

夏俊人
2023-03-14

当拆分"TEST/TEST/"。拆分("/") 我将得到一个字符串数组的长度=2

我如何拆分得到长度=3与元素["TEST","TEST", ""] ,因此最后一个元素是空字符串?

(我想用本机Java实现这一点,并考虑到性能,因为拆分必须一个接一个地在几百万行上进行)。


共有1个答案

袁奇逸
2023-03-14
匿名用户

您可以使用拆分重载参数化所需数组元素的数量:

String input = "TEST/TEST/";
System.out.println(Arrays.toString(input.split("/", 3)));
// or: input.split("/", -1)

输出

[TEST, TEST, ]

笔记

    < li >不必对正斜杠进行转义 < li >除非您提供更多详细信息,否则您问题中的“性能”部分有点难以回答 < li >您可能希望多线程处理您的过程。在Java 7中,您可以使用fork/join框架 < li >正如Pshemo指出的,您可以使用负的< code>int来应用该模式...

尽可能多的次数,数组可以有任何长度。

(来自API)。

 类似资料:
  • 问题内容: 我正在逐行读取.csv文件。例如,一行可能如下所示:。 现在我想根据“,”进行拆分:现在的问题是,这仅导致2个元素,但我想拥有5个元素,前两个元素应包含10和1,其他3个元素应为空串。 另一个例子是只包含一个元素,但我希望有5个元素。 最后一个示例给出了2个元素(9和1),但我希望有5个元素。第一个元素应为9,第四个元素应为1,所有其他元素应为空String。 如何才能做到这一点? 问

  • 我有一个字符串 我想将加法与数字分开,以便我可以将其保留在其他字段中。如何在不丢失数字或加法的情况下拆分此值?最后,我想有 2 个具有以下类型的字段: 关于这个有很多问题,但是我找不到两个值都必须保存的问题。这就是为什么我创建了一个新问题。

  • 问题内容: 我有以下字符串(Java 1.5): 我需要一个数组: 用Java最方便的方法是什么? 问题答案: 这将为您提供所需的数组,只有第一项为空。和: 这将使数组没有空的第一项。 此处的关键是零宽度正向超前(非捕获构造)(请参阅regex pattern docs)。 表示“或者;或:” 是字边界的-在那里是为了不将第一个视为定界符(因为它是序列的开头)

  • 问题内容: 我有一个多行字符串,该字符串由一组不同的定界符定界: 我可以使用将该字符串拆分为多个部分,但似乎无法获取与定界符匹配的实际字符串。 换句话说,这就是我得到的: 这就是我要的 是否有任何JDK使用分隔符regex拆分字符串但又保留分隔符的方法? 问题答案: 你可以使用和。像这样: 你将获得: 最后一个是你想要的。 等于选择之前;或之后的空字符;。 希望这可以帮助。 编辑 Fabian S

  • 问题内容: 我正在Java中的一个需要嵌套字符串的项目中工作。 对于纯文本形式的输入字符串,如下所示: 这是“字符串”,这是“ \嵌套”字符串 结果必须为以下内容: 请注意 ,我希望保留序列。 我有以下方法: 而且我需要根据给定的规则从给定的参数中创建一个字符串数组,而不使用 Java Collection Framework 或其派生类。 我不确定如何解决这个问题。 可以做一个正则表达式来解决这

  • 我想拆分到一个数组4使用 这是我的代码: 但是,结果标记是一个空数组:[],而不是我想要的4的数组。 我已经测试过稍微更改一下str: 这次的结果标记是<代码>[“”、“”、“”、“”、“”1“]。这接近我想要的,但我真的不想在进行拆分之前添加这个“1”。 问题基本上是字符串。如果split()只包含空元素,它将返回空数组。 你能帮我解决这个问题吗?