在Haskell中拆分类似shell的语法?

时间:2011-11-02 03:16:19

标签: python haskell split lexical-analysis shlex

如何在Haskell中以shell样式语法拆分字符串? Python中的等价物是shlex.split

>>> shlex.split('''/nosuchconf "/this doesn't exist either" "yep"''')
['/nosuchconf', "/this doesn't exist either", 'yep']

1 个答案:

答案 0 :(得分:1)

我不确定你到底是什么意思:你想从String中获取所有引用的子字符串吗?请注意,与Python等不同,Haskell只有一组引号,表示某些字符串是"..."

可以考虑的事项:

  • wordslines函数

  • split

  • 使用polyparse,uu-parsinglib,parsec等编写自定义解析器。

如果您指定了为什么需要此类功能,那么它可能很有用:您是否尝试解析现有的shell脚本?然后language-sh可能会有用。但你不应该在Haskell内部使用这样的字符串,而是使用[String]或其他东西。