用正则表达式进行模糊查询

怎么用正则表达式进行模糊查询,就是怎么通过车主的姓氏查询车辆信息?

你这个需求有点不太合理。正常这种不应该是数据库进行模糊查询吗?你用正则过滤姓氏,那同姓的怎么搞?车牌一般是用正则验证合不合理?
参考:
https://blog.csdn.net/qq_36598803/article/details/78062757?locationNum=1
https://www.cnblogs.com/xiangangXu1997/p/12468917.html

望采纳

在 Java 中,你可以使用正则表达式来进行模糊查询。

例如,假设你有一个字符串数组 vehicles,其中包含车辆信息,格式为 "车主姓氏 车牌号",例如 "张三 ABC123"。你想要查询车主姓氏以 "李" 开头的车辆信息。

import java.util.regex.Matcher;
import java.util.regex.Pattern;

// ...

String[] vehicles = {"张三 ABC123", "李四 DEF456", "王五 GHI789"};

Pattern pattern = Pattern.compile("^张\\w*");
for (String vehicle : vehicles) {
  Matcher matcher = pattern.matcher(vehicle);
  if (matcher.find()) {
    System.out.println(vehicle);
  }
}

上述代码我们使用了 java.util.regex.Pattern 类和 java.util.regex.Matcher 类来使用正则表达式。

  • 首先,我们使用 Pattern.compile 方法来编译正则表达式。这里的正则表达式是 "^张\w*",它表示匹配以 "张" 开头的字符串。
  • 然后,我们使用 Matcher.find 方法来查找是否有匹配的字符串。如果找到了,就输出车辆信息。