Matches a string according to the specified pattern @param str Target string @return If it returns null, that represents matching failure, else it returns an array contains all strings are matched.
See Implementation