gpt4 book ai didi

java - 借助正则表达式从文件中读取单个或两个单词

转载 作者:太空宇宙 更新时间:2023-11-04 15:08:37 25 4
gpt4 key购买 nike

我有一个txt文件,内容如下:

one two, three, four five, six seven, eight, nine, ten

你能帮我写出正确的正则表达式来读取一个或两个单词(带空格)吗?

需要:

stroke[0] = "one two",

stroke[1] = "three",

stroke[2] = "four five",

stroke[3] = "six seven",

stroke[4] = "eight",
...

我的代码:

Scanner sc = new Scanner(getResources().openRawResource(R.raw.skills));
while (sc.hasNext()) {
stroke[n] += sc.next("\\w|\\w\\s\\w");
n++;
}

最佳答案

你可能应该只使用 .split(", ") 但如果你必须使用正则表达式,你可以使用这个:

正则表达式:

([^,]+)

工作正则表达式示例:

http://regex101.com/r/cR0sV4

Java:

**注意,我对java语法没有经验,但是它会是这样的..(如果这不是完全正确的java语法,请原谅我。)

String str = "one two, three, four five, six seven, eight, nine, ten";

Pattern pattern = Pattern.compile("([^,]+)");

Matcher matcher = pattern.matcher(str);

while (matcher.find()) {
System.out.println(trim(matcher.group()));
}

注意 trim() 以删除任何前面的空格。

类似的东西..再说一遍,我不懂java,但正则表达式可以工作。参见示例。 :)

关于java - 借助正则表达式从文件中读取单个或两个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21643766/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com