我知道如何找到相似的字符串,但这种情况很棘手
支持我有以下字符串:
Xyz , rmz 2014-R1
Xyz 2014 - R1
Xyz , rmz 2014-r2
他们看起来都差不多吧?但我只希望我的程序返回具有相似数字的字符串
以下是我希望我的代码返回的内容:
Xyz , rmz 2014-R1
Xyz 2014 - R1
由于第三个字符串有2014-R2(它被认为是一年中的不同季度),我不希望我的代码返回。
我能想到的一种方法是拆分并收集所有数字。如果它的相似和数字相匹配吗?
这是删除重复,任何提示?我可能需要手动完成,但想出创造性的方法来解决这种情况。
答案 0 :(得分:0)
您可以使用正则表达式搜索模式dddd-rd:
public static void main( String args[] ){
String line = "Xyz , rmz 2014-r2";
String pattern = "\\d\\d\\d\\d-.\\d";
// Create a Pattern object
Pattern r = Pattern.compile(pattern);
// Now create matcher object.
Matcher m = r.matcher(line);
if (m.find( )) {
System.out.println("Found value: " + m.group(0) );
} else {
System.out.println("NO MATCH");
}
}
您可以检查此模式的每一行,然后检查它是否是您想要的年份/季度......
如果您想搜索特定年份和季度,可以这样做:
String pattern = "2014-r2";