Давайте разберем это регулярное выражение на несколько разных частей:
^
: устанавливает позицию в начале строки [0-9]{2,3}
: совпадение числа от 0 до 9 от 2 до 3 раз [- ]{0,1}
Соответствует тире от нуля до одного раза (Необязательно) [0-9]{3}
: совпадение числа от 0 до 9, ровно 3 раза [- ]{0,1}
Соответствует тире от нуля до одного раза (Необязательно) [0-9]{3}
: совпадение числа от 0 до 9, ровно 3 раза $
: устанавливает положение в конце строки или перед разделителем строки прямо в конце строки (если есть) Вот несколько строк, которые передают это регулярное выражение:
123-123-123
123123123
12-123-123
12123123
Вот хороший ресурс для изучения / тестовые регулярные выражения: regex101.com
Вы можете использовать return this.Content (xmlString, " text / xml ");
, чтобы вернуть построенную строку XML из действия.
Для JSON / XML я написал XML / JSON Action Filter , который упрощает задачу решать, не обрабатывая особых случаев в обработчике действий (что вы, кажется, делаете).