Q:

RegularExpressionValidator.ValidationExpression to force length in 10 or 12 symbols

RegularExpressionValidator.ValidationExpression="\d{10}" means only digits - 10 max.
RegularExpressionValidator.ValidationExpression="\d{10,12}" means only digits - 10, 11 or 12.
How to force strictly 10 or 12 symbols?

A:

One way is:
"\d{10}(\d{2})?"

Or you could be more explicit, at the cost of a little performance:
"^(\d{10}|\d{12})$"

The reason for the anchors in the second expression is described here:

If you experience problems with pattern-matching constructs, try wrapping the expression with "^(" and ")$". For example, "a|ab" becomes "^(a|ab)$".

Update
I was interested in why \d{10}|\d{12} did not work correctly, and decided to dip into the source code for the validator to see why this fails. 
The RegularExpressionValidator validates both server-side and client-side using the same regular expression and in the case of \d{10}|\d{12} it fails on the client-side for length 12, but works for length 10. The source-code reveals how the match is made:
var rx = new RegExp(val.validationexpression);
var matches = rx.exec(value);
return (matches != null && value == matches[0]);

Note that this regular expression is A|B but if A matches, B is never even checked - the regular expression is not "greedy" over the pipe operation - it takes the first match it finds. So the result of matching this regular expression is that the ten digit match succeeds even if you give a 12 digit input. But then the test value == matches[0] fails because the match is not the full string.
Swapping the order of the terms, i.e. writing \d{12}|\d{10}, does work because the longer match is tested first, and the shorter match is only tested if the long match fails.
Lesson learned: it is a good idea to explicitly use anchors when using the pipe in RegularExpressionValidator to avoid having to worry about the order of the terms.

A:

^\d{10}$|^\d{12}$
The two ^$ are important if you want an exact 10 or 12 digits.
By the way, If you are making a lot of regexp this website is great : http://rubular.com/
Have fun

A:

Use the regular expression "pipe"
RegularExpressionValidator.ValidationExpression = "\d{10}|\d{12}"

