Given:<BR>I have a string array that holds expressions in the form of "lhs operator rhs". <BR>Number of operands is {2,2}.<BR>Number of spaces in the expression is {2,n}<BR><BR>Requirement:<BR>Remove the spaces before and after the operator.<BR><BR>Current code works:<BR><BR><BR> Regex r = new Regex(" (&#060;=) &#124 (&#062;=) &#124 (&#060;) &#124 (&#062;) &#124 (&#060;&#062;) &#124 (=) ");<BR> for(int i = 0; i &#060; criteria.Length; i++)<BR> {<BR> criteria[i] = r.Replace(criteria[i], "$1$2$3$4$5$6");<BR><BR> }<BR><BR>Question:<BR>Even though this code works, I was wondering if I am using backreferences efficiently and properly. Something about the call to Replace() does not seem quite right to me. I believe that it works as is because there will be only ONE match per expression. However, if circumstances allowed for {1,n} matches per expression, I think the replacement would fall apart. Correct? Any ideas?