1

関数を使用せずに astringを別のものに分割するにはどうすればよいですか? より具体的には:に変わるstringData.List.Split"Abc""['A','b','c']"

4

3 に答える 3

5

Haskellではタイプがの同義語であるためと同じ"['A','b','c']"式ではなく文字列が必要な場合は、次のようなものが機能します。['A','b','c']"Abc"String[Char]

'[': (intercalate "," $ map show "Abc") ++ "]"

関数intercalateData.Listタイプに含まれています

intercalate :: [a] -> [[a]] -> [a]

2番目の引数として指定されたリストの要素の間に最初の引数を散在させます。

于 2012-06-10T09:49:00.347 に答える
3

私はあなたがに変わる方法を意味したと思い"Abc"ます["A", "b", "c"]。これは非常に簡単です。分割する文字列がの場合、sこれでうまくいきます。

map (\x -> [x]) s
于 2012-06-10T07:48:01.623 に答える
3

ghci を起動して、記述した式が同じであることを確認します。

Prelude> ['A','b','c']
"Abc"
于 2012-06-10T10:00:33.687 に答える