6
私は与えられた正規表現のすべての一致のキャプチャグループを返すHaskell関数を探しています。正規表現のすべてのキャプチャグループを見つける
私はText.Regexを見ていますが、そこに何も見つかりませんでした。
import Text.Regex
findNext :: String -> Maybe (String, String, String, [String]) -> [ [String] ]
findNext pattern Nothing = []
findNext pattern (Just (_, _, rest, matches)) =
case matches of
[] -> (findNext pattern res)
_ -> [matches] ++ (findNext pattern res)
where res = matchRegexAll (mkRegex pattern) rest
findAll :: String -> String -> [ [String] ]
findAll pattern str = findNext pattern (Just ("", "", str, []))
の検索結果を:今
私が動作しているようです。この回避策を使用しています
findAll "x(.)x(.)" "aaaxAxaaaxBxaaaxCx"
[["A","a"],["B","a"]]
質問:
- は私がText.Regexで何かを見逃していましたか?
- findAll関数を実装するHaskell正規表現ライブラリはありますか?
私は知りませんでしたが、前にレジスに '=〜'と異なるインターフェースがありました。 – fuz
@FUZxxl正規表現のニース擬似複数。私は本当に笑った。正規表現、regicis、regici、regicem、o正規表現、regice ...これは一般的な使用法ですか? – Hyperboreus
@Hyperboreus正規表現である一般的な複数形ではないように見えますが、インデックス(インデックス)から派生しました。 – fuz