Hi Karthik,
$1, $2, $3 refers to the groups in the pattern, anything you put in () in the pattern becomes a group
introscope.agent.sqlagent.normalizer.regex.key_tables.pattern= (A)(B)(C)
$1 refers to pattern A
$2 refers to pattern B ..and so on
introscope.agent.sqlagent.normalizer.regex.key_tables.replaceFormat=$1
means replace the pattern match with $1 which is A in this example
introscope.agent.sqlagent.normalizer.regex.SELECTS.pattern=(.*)(SELECT)([\\s\\S]*)
introscope.agent.sqlagent.normalizer.regex.SELECTS.replaceAll=true
introscope.agent.sqlagent.normalizer.regex.SELECTS.replaceFormat=$2
introscope.agent.sqlagent.normalizer.regex.SELECTS.caseSensitive=false
means replace the pattern match in the SQL query (basically all SELECT queries) with only "SELECT" after normalization
You may want to look at how Regular Expressions work in Java (the matcher used by APM is java.util.regex)
Hope that helps