java - 如何使用两个分隔符拆分一个字符串,其中一个分隔符是双制表符?

标签 java split

我在 java 中创建一个解析器,我正在解析的内容由制表符分隔,并且在某一点上由双制表符分隔。

这是我尝试过的。输出仅显示为被一个选项卡拆分。

这是我要拆分的代码:

String[] array1 = nextline.split("(\t)|(\t{2})");

我也试过

String[] array1 = nextline.split("(\t)|(\t\t)");

最佳答案

\\t{1,2} 怎么样?

public static void main(String[] args)  {
    String s = "ONE\tTWO\t\tTHREE";
    String[] d = s.split("\\t{1,2}");
    for(String e : d) {
        System.out.println(e);
    }

}

输出应该是

ONE
TWO
THREE

如果您需要拆分任意数量的选项卡,那么您应该使用

\\t+

如果你需要在任何空白处进行分割

\\s+

关于java - 如何使用两个分隔符拆分一个字符串,其中一个分隔符是双制表符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24192635/

相关文章:

python - Python 中的多重拆分

regex - 删除以特定字符开头和结尾的任何子字符串

batch-file - 按批处理订购文件列表

java - Maven - 如何为测试包创建源 jar?

java - 无法在 Mac 上运行 topcoder arena

java - 拆分不能正常工作

jquery - 不使用分隔符分割字符串,然后使用 alpha 索引索引到对象中

java - 创建自定义 Jackson 注释

java - 用 Java 在图像上精确绘制

java - AsyncTask 复制文件