我有一行纯文本,其中包含一系列由加号分隔的标签:
事件名称@location +tag1 +tag2 +tag3 +tag4
数据字段总是以相同的顺序出现:名称、位置、标签。名称和位置始终只有一个实例,但可以有一个或多个标签。我希望能够复制 .NET StringSplit Java 中的方法(将所有分隔的字符串写入数组),但我似乎无法全神贯注地去做。
我希望从上面的示例中获取标签字段的输出是:
tag[0] = tag1
tag[1] = tag2
tag[2] = tag3
tag[3] = tag4
首先,我能找到的最接近的方法是使用正则表达式的 split
。但我不确定如何对正则表达式进行编码以从数组中排除第一个 +之前 的任何字符。
我想在特定行中获取 +
的计数并使用 for 循环来解析和创建 tagString[count-of-plusses]
,但是那会吗在一行中遍历 +nnnnn
的多个实例?
关于解决这个问题的好方法有什么建议吗?
最佳答案
如果您查看 String 的 javadoc具体来说:
public String[] split(String regex)
这将允许您围绕任何您喜欢的字符串拆分并返回一个字符串数组。
您也可以将此方法的版本与 limit
参数一起使用。首先使用它可以让您摆脱所有的东西,然后在没有 limit
参数的情况下再次做。
关于java - 在 Java 中,如何将单个字段的多个值解析为 String 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11473639/