gpt4 book ai didi

java - Java比较当前字符串和文本文件

转载 作者:行者123 更新时间:2023-12-02 04:01:21 25 4
gpt4 key购买 nike

我想知道是否有一种方法可以将字符串与文本文件进行比较以获得最佳答案。例子:我们在文本文件中有一个这样的内容:

BANANA
BANTER
APPLE
BASKET
BASEBALL

当前字符串是:B.N...(点是未知字符)。有没有办法立即从文本文件中获取包含可能的字母(例如 A、T 和 E)的数组或 HashMap ?

我认为我应该做什么:我已经设法将文本文件的每一行放入数组列表中。我应该将当前字符串与数组列表中可能的答案进行比较,并获取该单词中点位置上的每个字符,并将其放入新的数组列表中。

提前致谢。

最佳答案

您可以尝试使用正则表达式。您当前的字符串“B.N ...”必须转换为模式,您将其与文本文件中存在的其他单词进行匹配。你可以找到正则表达式的教程here .

这是一个小例子:

public class RegexPlayground {
public static void main(String[] args){
Pattern pattern=Pattern.compile("B.N...");
String word="BANANA";
Matcher matcher = pattern.matcher(word);
if(matcher.find()){
System.out.println("Found matching word \""+word+"\"");
}
word="BASKET";
matcher = pattern.matcher(word);
if(matcher.find()){
System.out.println("Found matching word \""+word+"\"");
}else{
System.out.println("No match on word \""+word+"\"");
}
}
}

输出:

Found matching word "BANANA"

No match on word "BASKET"

所以程序的整体逻辑应该是这样的:

String regex = getRedex(); // This is your B.N...
Pattern pattern = Pattern.compile(regex);
List<String> words=readFromFile(); // The list of words in the text file
for(String word: words){
Matcher matcher = pattern.matcher(word);
if(matcher.find()){
// Match found
// do what you need to do here
}else{
// Same here
}
}

关于java - Java比较当前字符串和文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34859025/

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