Fix: use `detect` instead of `select{}.first`

`select` iterates over each object while `detect` stops on first match and so it does not allocates so many string objects and is faster.
Merge pull request #80 from divineforest/select-to-detect

Fix: use `detect` instead of `select{}.first`