2

どれだけ正規表現を学んで実装しようとしても失敗します。

以下: 最初の値は入力文字列です。コロンの後の値は、文字列から必要な用語です。用語は常に -> いずれかになります入力! (AZ) (数値)またはCalc! (AZ) (数字)

例:Input!A34 または Calc!D93。

入力:定数/値に置き換える必要があります

  • ADD(入力!A34 + 計算!D93) : 入力!A34, 計算!D93
  • 入力!D343 = 1000 : 入力!D343
  • Calc!D71=IF(HasValue(Input!D4), "FormIs(PartofReturn)", IFERROR(1/0)): Calc!D71,Input!D4

    これにはどのパターンを使用すればよいですか?

    私の試み:

    パターン findMyPattern = Pattern.compile("(?:Input|" + "Calc!"
                    + ")![a-zA-Z]\\d+");
            マッチャー foundAMatch = findMyPattern.matcher(input);
            HashSet hashSet = new HashSet();
            while (foundAMatch.find()) {
                文字列 s = foundAMatch.group(0);
                hashSet.add(s);
            }
    
    
  • 4

    1 に答える 1

    1
    Pattern findMyPattern = Pattern.compile("(?:Input|Calc)![A-Z]\\d+");
    
    于 2013-03-20T23:44:49.447 に答える