我正在寻找本质上与此相反的方法,并且快疯了。
反转下面的参数以检查列表中的任何元素的东西在字符串中。
代替:
any (isInfixOf "Hask") ["I am", "new to", "Haskell"]
我需要:
any (isInfixOf ["I am", "new to", "Haskell"]) "I am new to"
任何帮助表示赞赏!
您可以使用 lambda 表达式将其编写为:
any (\x -> isInfixOf x "I am new to") ["I am", "new to", "Haskell"]Run Code Online (Sandbox Code Playgroud)
x因此,这是我们调用的列表中的项目isInfixOf x "I am new to"。这意味着如果列表中的一个这样的元素是 的中缀"I am new to",它将返回True,否则将返回False。
您还可以使用flip :: (a -> b -> c) -> b -> a -> c:
any (flip isInfixOf "I am new to") ["I am", "new to", "Haskell"]Run Code Online (Sandbox Code Playgroud)
any (`isInfixOf` "I am new to") ["I am", "new to", "Haskell"]Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57 次 |
| 最近记录: |