如何从位于 2 个字符之间的 char 数组中获取不确定长度的单词?
how to get a word of indeterminate length from an array of char located between 2 characters?
示例:
String phrase = "I want the word between /and? but how?";
我需要:
字符串词=“和”;
即使多了个“/”和“?”我需要介于两者之间的那个。
我正在使用 java 1.8
如果我处理得当,单词之间不会有空格,但如果我能以处理和没有空格的方式学习,那就太好了。
让我们使用 Java 正则表达式。
您没有指定“/”字之间或字与“?”之间是否有空格。那么让我们假设结构是:/word? (单词粘在“/”和“?”上,“/”和“?”每组只有一个单词。
Pattern pattern = Pattern.compile("/[a-zA-Z]+\?");
Matcher matcher = pattern.matcher("/one? /two?"); //Your Text Here
String word;
while (matcher.find()) {
word = matcher.group();
word = word.replace("/", "");
word = word.replace("?", "");
}
如果您已经期望在“/”和“?”之间多一个单词集,您应该创建一个列表并在其中添加字符串“word”:
Pattern pattern = Pattern.compile("/[a-zA-Z]+\?");
Matcher matcher = pattern.matcher("/one? /two?"); //Your Text Here
List<String> words = new ArrayList<>();
String word;
while (matcher.find()) {
word = matcher.group();
word = word.replace("/", "");
word = word.replace("?", "");
words.add(word);
}
示例:
String phrase = "I want the word between /and? but how?";
我需要:
字符串词=“和”;
即使多了个“/”和“?”我需要介于两者之间的那个。
我正在使用 java 1.8
如果我处理得当,单词之间不会有空格,但如果我能以处理和没有空格的方式学习,那就太好了。
让我们使用 Java 正则表达式。
您没有指定“/”字之间或字与“?”之间是否有空格。那么让我们假设结构是:/word? (单词粘在“/”和“?”上,“/”和“?”每组只有一个单词。
Pattern pattern = Pattern.compile("/[a-zA-Z]+\?");
Matcher matcher = pattern.matcher("/one? /two?"); //Your Text Here
String word;
while (matcher.find()) {
word = matcher.group();
word = word.replace("/", "");
word = word.replace("?", "");
}
如果您已经期望在“/”和“?”之间多一个单词集,您应该创建一个列表并在其中添加字符串“word”:
Pattern pattern = Pattern.compile("/[a-zA-Z]+\?");
Matcher matcher = pattern.matcher("/one? /two?"); //Your Text Here
List<String> words = new ArrayList<>();
String word;
while (matcher.find()) {
word = matcher.group();
word = word.replace("/", "");
word = word.replace("?", "");
words.add(word);
}