【问题标题】:How to split string in java based on period `.` [duplicate]如何根据句点`.`在java中拆分字符串 [重复]
【发布时间】:2018-12-29 22:03:41
【问题描述】:

在这里我输入了一个字符串,用户输入带有扩展名的文件名,我想编写一个给出文件扩展名的程序,但是当我运行这个程序时它给出异常 arrayindexoutofbound 异常,有什么原因吗?

导入 java.util.Scanner;

public class Extensionfile {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("Enter file with data type");
        String file = sc.next();
        String parts[] = file.split(".");
        String part1 = parts[1];
        System.out.println("The file type is"+part1);

    }
}

【问题讨论】:

  • file.split("\\."); . 是正则表达式中的任何字符。然后检查parts中是否有至少一个元素
  • 此代码有错误。文件名本身可以包含句点

标签: java


【解决方案1】:

由于句号.是java正则表达式中预定义的字符类,你应该按以下方式使用

String parts[] = file.split("\\.");

String parts[] = file.split("[.]");

点击这里了解更多信息here

【讨论】:

    猜你喜欢
    • 2011-08-04
    • 2015-06-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 2018-03-29
    相关资源
    最近更新 更多