Java中是否存在通配符这样的东西?

我正在运行一个比较程序,并且它在一分钟内进行直接的“字符串到字符串”比较,如果它们是完全匹配,则输出它们是匹配的.

好吧,我希望增加一个允许“相似性”的附加功能……

例如:

String em1 = "52494646";
String em2 = "52400646";


if (em1.equals(em2)){
    output.writeUTF(dir + filenames[i]);
}

这是代码的一小部分.我喜欢它,以便它跳过“00”并仍然将其识别为“几乎”相同的数字并仍然输出它.

我想它会看起来像字符串em2 =“524”##“646”,但这显然只是一个概念

有没有人知道是否有办法拥有这种“通配符”(我从uni sql中选择的一个术语),或者是否有另一种方法来做这种相似类型的交易.

谢谢 :)

解决方法

您可以使用正则表达式:
if (em1.matches("524[0-9]{2}646")) {
  // do stuff
}

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...