add test and fix '+' bug
fix '(' mis-match fatal error
modify Rep.string_match to avoid unnecessary argument passing