reuse NSDataDetector object to save memory
fixes 'UIView#shake' to support the 'from_current' option