Added @tonyarnold 's version that allows more typical objective C formats