Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在正则表达式处拆分文本文件并创建数组_Java_Arrays_Regex - Fatal编程技术网

Java 在正则表达式处拆分文本文件并创建数组

Java 在正则表达式处拆分文本文件并创建数组,java,arrays,regex,Java,Arrays,Regex,我需要一些关于用java拆分文本文件的帮助。我有一个大约2000字的文本文件,文本文件的格式如下- "A", "HELLO", "RANDOM", "WORD"... etc 我的目标是将这些单词放入字符串数组。使用scanner类,我获取文本并创建一个字符串,然后尝试拆分并添加到数组中,如下所示 Scanner input = new Scanner(file); while(input.hasNext()){

我需要一些关于用java拆分文本文件的帮助。我有一个大约2000字的文本文件,文本文件的格式如下-

"A", "HELLO", "RANDOM", "WORD"... etc
我的目标是将这些单词放入字符串数组。使用scanner类,我获取文本并创建一个字符串,然后尝试拆分并添加到数组中,如下所示

Scanner input = new Scanner(file);

while(input.hasNext()){

   String temp = input.next();

   String[] wordArray = temp.split(",");
}
在添加到数组后,当我想要使用或打印每个元素时,它们会被存储在“”周围。而不是印刷

A
HELLO
RANDOM
…等等,他们正在印刷

"A"
"HELLO"
"RANDOM"
所以我的问题是,我怎样才能去掉这些正则表达式,并在每个单词处拆分文本,这样就没有正则表达式了


非常感谢

使用此选项将所有出现的“替换为空字符串

wordArray[i].replaceAll("/"", "");
在循环中执行此操作。

尝试此操作

        List<String> allMatches = new ArrayList<>();
        Scanner input = new Scanner(new File(FILE_PATH), StandardCharsets.UTF_8);
        while(input.hasNext()){
            String temp = input.next();
            Matcher m = Pattern.compile("\"(.*)\"").matcher(temp);
            while (m.find()) {
                allMatches.add(m.group(1));
            }
        }
        allMatches.forEach(System.out::println);
List allMatches=new ArrayList();
扫描仪输入=新扫描仪(新文件(文件路径),StandardCharsets.UTF_8);
while(input.hasNext()){
字符串temp=input.next();
Matcher m=Pattern.compile(“\”(.*)\”).Matcher(temp);
while(m.find()){
添加(m组(1));
}
}
allMatches.forEach(System.out::println);

就你的情况而言,当你有所有像这样的值时,
“A”,“HELLO”,“RANDOM”,“WORD”…等等,其中每个值都有分隔符,
,“
”,你可以使用这个
临时拆分(“\”,\”);
,你不需要使用循环。

重新格式化问题以便更好地阅读希望这有帮助。
太好了,非常感谢。