我知道要逃避Haskell中的特殊字符我们可以使用\",所以如果我尝试传递参数:
parseString :: String
parseString = "{\"coord\":[\"D\",\"7\"],\"result\":\"HIT\",\"prev\":{\"coord\":[\"A\",\"10\"],\"result\":null,\"prev\":null}}"
Run Code Online (Sandbox Code Playgroud)
到功能
take 7 parseString
Run Code Online (Sandbox Code Playgroud)
一切正常,但我想知道是否有更短的方法来产生相同的结果,而不是在\"任何地方放置逃避符号(想象大JSON)?
例如,Python有这个:
>>> s = """my string with "double quotes" blablabla"""
'my string with "double quotes" blablabla'
Run Code Online (Sandbox Code Playgroud) 为什么在Haskell中减少函数是可能的:
calculate :: Integer -> Integer -> Integer
calculate a b = f 1 a b
where
f :: Integer -> Integer -> Integer -> Integer
f a b c = a + b
Run Code Online (Sandbox Code Playgroud)
进入某事:
calculate :: Integer -> Integer -> Integer
calculate = f 1
where
f :: Integer -> Integer -> Integer -> Integer
f a b c = a + b
Run Code Online (Sandbox Code Playgroud)
我只需要一些指导,任何我可以找到答案的资源,阅读更多有关它的内容真的很有用.