如何将字符串转换为纯脚本中的字符列表?
How do I convert a string to a list of chars in purescript?
我搜索了pursuit,只有两个看起来很匹配:
- 来自 purescript-oplicative 的 charList(模块:Node.Optlicative.Internal)
- 来自 purescript-yarn 的 toChars(模块:Data.String.Yarn)
并且 yarn
和 optlicative
均不适用于 psc-package(使用 psc-package 0.4.0 和 {"set": "psc-0.12.0", "source": "https://github.com/purescript/package-sets.git"}
)
相关问题:
我会先通过 toCharArray
转换为 Array Char
,然后转换为列表:
import Data.List as List
import Data.String.CodeUnits as String
...
List.fromFoldable $ String.toCharArray "abcd"
注意: 自 purescript-strings
v4.0.0 起,toCharArray
从 Data.String.CodeUnits
导出,但在此之前它在 Data.String
。根据您使用的 compiler/library 版本进行调整。
顺便说一句:您确定需要列表而不是数组吗? PureScript 中的列表比 Haskell 中的列表更不惯用。数组更常见。
我将不得不写一个答案而不是对上一个答案的评论,因为我还没有 50 点声望。需要50声望点才能发表评论
要将字符串转换为字符列表,可以使用以下代码:
import Data.String.CodeUnits (toCharArray) --from package purescript-strings@4.0.0
import Data.List (fromFoldable, List)
import Data.Function ( ($) ) --from package purescript-prelude@4.0.1
convertStringToListOfChars :: String -> List Char
convertStringToListOfChars str = fromFoldable $ toCharArray str
从 REPL,使用它得到以下结果:
> convertStringToListOfChars "abcde"
('a' : 'b' : 'c' : 'd' : 'e' : Nil)
我搜索了pursuit,只有两个看起来很匹配:
- 来自 purescript-oplicative 的 charList(模块:Node.Optlicative.Internal)
- 来自 purescript-yarn 的 toChars(模块:Data.String.Yarn)
并且 yarn
和 optlicative
均不适用于 psc-package(使用 psc-package 0.4.0 和 {"set": "psc-0.12.0", "source": "https://github.com/purescript/package-sets.git"}
)
相关问题:
我会先通过 toCharArray
转换为 Array Char
,然后转换为列表:
import Data.List as List
import Data.String.CodeUnits as String
...
List.fromFoldable $ String.toCharArray "abcd"
注意: 自 purescript-strings
v4.0.0 起,toCharArray
从 Data.String.CodeUnits
导出,但在此之前它在 Data.String
。根据您使用的 compiler/library 版本进行调整。
顺便说一句:您确定需要列表而不是数组吗? PureScript 中的列表比 Haskell 中的列表更不惯用。数组更常见。
我将不得不写一个答案而不是对上一个答案的评论,因为我还没有 50 点声望。需要50声望点才能发表评论
要将字符串转换为字符列表,可以使用以下代码:
import Data.String.CodeUnits (toCharArray) --from package purescript-strings@4.0.0
import Data.List (fromFoldable, List)
import Data.Function ( ($) ) --from package purescript-prelude@4.0.1
convertStringToListOfChars :: String -> List Char
convertStringToListOfChars str = fromFoldable $ toCharArray str
从 REPL,使用它得到以下结果:
> convertStringToListOfChars "abcde"
('a' : 'b' : 'c' : 'd' : 'e' : Nil)