有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

如何在Java中解析字符串?有什么类似于Python的re吗。finditer()?

我有一个输入字符串和一个非常简单的模式-大写字母,整数,大写字母,整数。。。我想把每个大写字母和每个整数分开。我想不出在Java中实现这一点的最佳方法

我曾经尝试过使用模式和匹配器,然后是StringTokenizer的regexp,但仍然没有成功

这就是我想要做的,如Python所示:

for token in re.finditer( "([A-Z])(\d*)", inputString):
      print token.group(1)
      print token.group(2)

对于输入“A12R5F28”,结果为:

A

12

R

5

F

28

共 (2) 个答案

  1. # 1 楼答案

    您可以在Java中使用regex API并实现相同的功能:

    Pattern myPattern = Pattern.compile("([A-Z])(\d+)")
    Matcher myMatcher = myPattern.matcher("A12R5F28");
    while (myMatcher.find()) {
          // Do your stuff here
    }
    
  2. # 2 楼答案

    继续拉维的答案

    Pattern myPattern = Pattern.compile("([A-Z])(\\d+)");
    Matcher myMatcher = myPattern.matcher("A12R5F28");
    while (myMatcher.find()) {
      System.out.println(myMatcher.group(1) + "\n" + myMatcher.group(2));
    }