我需要从房屋编号/单元编号中提取编号范围。实例-1B至36B,1-B至36-B或B1至B36或B1至B36结果应该是1到36
前缀或后缀字符或数字可以有任何长度。例如B150或B1709或150B或150块或1709块
请告诉我如何在Java中实现这一点。
谢谢。
使用正则表达式执行此操作。具体来看字符类、量词、组和捕获。
这是备忘单的链接。
让你从这里开始是一个"相似"的例子。
String line = "36-B";
Pattern pattern = Pattern.compile("(\d*)(.+)(\d*)");
Matcher matcher = pattern.matcher(line);
while (matcher.find())
{
System.out.println("First captured group: " + matcher.group(1));
System.out.println("Second captured group: " + matcher.group(2));
System.out.println("Thisr captured group: " + matcher.group(3));
}
如果您遇到问题,请告诉我们。编码快乐!!