Регулярное выражение для преобразования 1.2.3 в 1.02.03 - PullRequest
0 голосов
/ 18 июня 2009

Я действительно плохо справляюсь с регулярными выражениями, и мне нужно преобразовать «1.2.3» в «1.02.03» таким образом, чтобы первая часть оставалась такой же, как была, а вторая и третья преобразуют 2 в 02 , С 7 по 07 и т. Д., Но если есть 10, 15, 17 и т. Д., Все останется без изменений. Я хочу использовать его в msbuild.

образцы:

2.5.7  -> 2.05.07
2.10.9 -> 2.10.09
1.7.18 -> 1.07.18

Спасибо.

Ответы [ 2 ]

4 голосов
/ 18 июня 2009
/\.(\d)(?=\D|$)/g  =>  .0$1

Работает с любым количеством точек:)

Редактировать: когда прогноз не поддерживается, но границы слов есть, вы можете использовать

/\.(\d)\b/g  =>  .0$1

... или просто потому, что это проще:)

0 голосов
/ 18 июня 2009
/\.\([1-9]\)[([.$])]/.0\1\2/g

Начинается с точки, одной цифры, точки или конца строки до точки с нулевым числом endym.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...