2014-11-02 2 views
2

Я ищу простой способ с помощью regex изменить формат строки. это то, что у меня естьСоответствие RegEx для строки в vb.net

POL-CAD-OPT-1-15-31Oct14 
INS-DOT-OPT-5-7-13Jun14 
BOL-GUP-OPT-5-5-28Oct14 

это то, что она должна быть

POL-CAD-OPT-01-15-31Oct14 
INS-DOT-OPT-05-07-13Jun14 
BOL-GUP-OPT-05-05-28Oct14 

прямо сейчас я использую старый разнесенных построить строку, используя, если длина = 1, то добавьте 0.

Есть ли что-нибудь, что я могу сделать с RegEx?

+0

Вы могли бы, вероятно, использовать функциональные возможности замены в RegEx ... придется искать, чтобы показать вам, как я не делали это на века. +1 хотя для правильного использования RegExes :) – Tim

ответ

3

Редактировать на комментарий ниже: использовать этот шаблон
-(\d)(?=-) и заменить -0$1
Demo

-      '-' 
(      group and capture to \1: 
    \d      digits (0-9) 
)      end of \1 
(?=      look ahead to see if there is: 
    -      '-' 
)      end of look-ahead 
+0

, который работает, но некоторая строка, подобная этой, возникает проблема. POL-CAD.OPT-4-6-29Sep14.IP – PaulWill

+0

спасибо =) regex is amazing – PaulWill

Смежные вопросы