I am working on the following code and wanted to find the index of the number in the box string. So i used findIndex but it returns the Maybe Int value whereas i want only Int v
Obviously, it's not possible in general: when the search doesn't succeed there is no canonical integer return value, so you get a Nothing
without any such value then.
If you don't really care about the Nothing
case (e.g. because you will always make sure there is one such element) you can use the fromJust
function out of Data.Maybe
, which you can also quickly implement yourself:
findposition number = (\(Just i)->i) . findIndex (==number)
However that's not really recommendable because you will need to make sure this doesn't break, and doing this is much easier by means of a proper pattern matching.