Haskell: проверить, содержит ли список определенный «подсписок» - PullRequest
13 голосов
/ 13 ноября 2011

Есть ли хитрость или функция прелюдии для проверки, содержит ли список определенную подстроку / подсписок?

xyz :: [a] -> [a] -> Bool
xyz "hello world" "worl" -> True
xyz [1,2,3,4,5,6,7,8,1,2,3,4,5] [7,8,1] -> True

Я пытался написать один самостоятельно, но это тривиальная проблема, и я не хочу изобретать велосипед.

1 Ответ

28 голосов
/ 13 ноября 2011

Использовать isInfixOf из Data.List.

Параметры противоположны тем, что вы просили - обычно удобнее всего использовать такую ​​функцию: "worl" `isInfixOf` "hello world" (возвращает True).

...