Java从列表中查找部分匹配的字符串

标签 java string substring partial

所以我使用谷歌相机 api 创建光学文本阅读器进行 OCR。从相机读取时,我想通过将读取的字符串与字符串列表匹配来过滤读取的字符串,如果读取的字符串部分匹配,则添加并显示列表中的项目。

除了过滤之外的一切都有效。

假设我有一个包含字符串的列表:

"BigSizeScrew   45**"

我想匹配读取的字符串:

"BigSizeScrew"

...添加到带有数字的字符串,然后添加包含数字的字符串。

数字和星星是出于其他原因但必须保留,原因与问题无关。

tl;博士:

如何将字符串部分匹配到列表中的现有字符串?

我有以下内容,但它专门搜索 100% 匹配的字符串,而不是如果检查的字符串包含读取字符串的子字符串。

for(int i =0;i<items.size();++i){
    if (list.contains(items.valueAt(i))) {
        TextBlock item = items.valueAt(i);
        stringBuilder.append(item.getValue());
        stringBuilder.append("\n");
    }
}

编辑:

该列表包含大约 200 个不同的字符串,这些字符串应该是部分匹配的。但一切都是一样的;部分匹配主字符串,但不匹配数字/星星。

最佳答案

使用indexOf()方法。方法的索引给出匹配字符串的索引。所以它的值大于-1,这意味着搜索字符串存在于列表中,并且您可以使用该字符串。

关于Java从列表中查找部分匹配的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46134568/

相关文章:

python - 检查字符串的特定格式的子字符串,如何..?

sql - 解析字符串数据以仅选择全名中的中间名

java - 如何使用Spring Security阻止未经授权的用户?

C++使用find(str,index)计算字符串中char的出现次数

java - 定义字符串时在java中无效的转义序列(有效的是\b\t\n\f\r\"\'\\)

c++ - 段错误 : C++ sort an string vector with lambda comparator

iphone - 有没有像 substringFromIndex 这样使用更少内存的函数?

java - 正则表达式匹配字符和数字,但不匹配Java中的特定字符串

java - Apache POI 镜像阿拉伯语单词

java - 在 MyEclipse Workbench 中自动切换调试和变量/表达式 View