Scalaで繰り返し正規表現グループを取得する

ヨアヴ

私はScalaアプリに取り組んでおり、正規表現を使用してファイルを解析しようとしています。ファイル形式は次のようなものです。

actions{
ACTION_NAME=[ELEMENT,ANOTHER_ELEMENT,SOMETHING_ELSE]
ANOTHER_ACTION=[SOMETHING_HERE,ANOTHER_ONE]
}

ここで、中括弧内の要素の量は動的です。

これらの行をタプルに繰り返し一致させたいので(例:ACTION_NAME | ELEMENT、ANOTHER_ELEMENT、SOMETHING_ELSE)、次の正規表現を使用して一致させました。

actions\{(?:[\s\n]*([A-Z_]+)=\[([A-Z_,]*)\][\s\n]*)*\}

一致は正常に機能しますが、私のマッチャーグループには、もちろん最後のキーと値のみが含まれています。マッチャーを作成して繰り返しを繰り返し、ファイル内のすべての一致をキー、値、キー、値、キー、値のイテレーターとして返すにはどうすればよいですか...

ありがとう

トマラク

あなたはワンステップでそれを行うことはできません。Scalaは、繰り返されるグループ(*)の一致インスタンスの表示をサポートしていません

それを分割します:

  • actions\{([^}]*)\}入力全体と照合します。試合ごとに
    • グループ1の内容を取得します
    • (\w+)=\[([^\]]*)\]それと一致します。試合ごとに
      • グループ1の内容が鍵になります
      • グループ2の内容はアイテムのリストになります
        • 個々のアイテムを取得するには、コンマでそれらを分割します

(*)それはJavaがそれをサポートしていないからです。他の正規表現エンジン、最も目立つのは.NETのもので、このような機能を提供します。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

正規表現でqantizerを使用して繰り返しパターンでグループを取得する方法

分類Dev

正規表現で繰り返してグループを作成する方法

分類Dev

正規表現で繰り返しグループをキャプチャする

分類Dev

正規表現で繰り返しグループを取得するにはどうすればよいですか?

分類Dev

正規表現を使用して「複数」の繰り返しグループをキャプチャする方法

分類Dev

Python正規表現で繰り返されるグループをキャプチャする

分類Dev

正規表現:グローバルフラグなしでグループを繰り返しキャプチャする

分類Dev

繰り返しパターンですべてのグループの最初の出現をキャプチャする正規表現

分類Dev

正規表現グループの繰り返し文字

分類Dev

正規表現繰り返しグループ

分類Dev

グループ名が繰り返される正規表現

分類Dev

正規表現を使用してPythonで繰り返し文字列を取得する

分類Dev

正規表現の一致を繰り返し取得する

分類Dev

より大きな試合内でグループを繰り返しキャプチャする正規表現?

分類Dev

正規表現:グループエリアを繰り返す方法は?

分類Dev

正規表現を使用して、括弧を含むグループを抽出(繰り返し)します

分類Dev

特定の識別子間でグループを繰り返しキャプチャするための正規表現

分類Dev

正規表現を使用して繰り返される文字のグループを置き換える

分類Dev

文字列の終わりまで正規表現グループを繰り返す方法

分類Dev

繰り返されるグループを解析するための正規表現

分類Dev

Scala正規表現で内部グループを抽出する

分類Dev

正規表現で繰り返しパターンを抽出する

分類Dev

正規表現-キャプチャグループの繰り返し

分類Dev

正規表現キャプチャグループ参照>繰り返し?

分類Dev

Java正規表現でグループ名を取得する

分類Dev

Vavrで正規表現グループを取得する

分類Dev

正規表現でのみグループを取得する

分類Dev

正規表現(.NET):グループを途中で取得する方法

分類Dev

キャプチャしたグループを正規表現の置換で繰り返すことはできますか?

Related 関連記事

  1. 1

    正規表現でqantizerを使用して繰り返しパターンでグループを取得する方法

  2. 2

    正規表現で繰り返してグループを作成する方法

  3. 3

    正規表現で繰り返しグループをキャプチャする

  4. 4

    正規表現で繰り返しグループを取得するにはどうすればよいですか?

  5. 5

    正規表現を使用して「複数」の繰り返しグループをキャプチャする方法

  6. 6

    Python正規表現で繰り返されるグループをキャプチャする

  7. 7

    正規表現:グローバルフラグなしでグループを繰り返しキャプチャする

  8. 8

    繰り返しパターンですべてのグループの最初の出現をキャプチャする正規表現

  9. 9

    正規表現グループの繰り返し文字

  10. 10

    正規表現繰り返しグループ

  11. 11

    グループ名が繰り返される正規表現

  12. 12

    正規表現を使用してPythonで繰り返し文字列を取得する

  13. 13

    正規表現の一致を繰り返し取得する

  14. 14

    より大きな試合内でグループを繰り返しキャプチャする正規表現?

  15. 15

    正規表現:グループエリアを繰り返す方法は?

  16. 16

    正規表現を使用して、括弧を含むグループを抽出(繰り返し)します

  17. 17

    特定の識別子間でグループを繰り返しキャプチャするための正規表現

  18. 18

    正規表現を使用して繰り返される文字のグループを置き換える

  19. 19

    文字列の終わりまで正規表現グループを繰り返す方法

  20. 20

    繰り返されるグループを解析するための正規表現

  21. 21

    Scala正規表現で内部グループを抽出する

  22. 22

    正規表現で繰り返しパターンを抽出する

  23. 23

    正規表現-キャプチャグループの繰り返し

  24. 24

    正規表現キャプチャグループ参照>繰り返し?

  25. 25

    Java正規表現でグループ名を取得する

  26. 26

    Vavrで正規表現グループを取得する

  27. 27

    正規表現でのみグループを取得する

  28. 28

    正規表現(.NET):グループを途中で取得する方法

  29. 29

    キャプチャしたグループを正規表現の置換で繰り返すことはできますか?

ホットタグ

アーカイブ