У меня сжатое строковое значение, которое я извлекаю из файла импорта. Мне нужно отформатировать это в номер посылки, который отформатирован следующим образом: ##-##-##-###-###
. Поэтому строка «410151000640» должна стать «41-01-51-000-640». Я могу сделать это со следующим кодом:Строка формата с тире
String.Format("{0:##-##-##-###-###}", Convert.ToInt64("410151000640"));
Однако строка может содержать не все числа; у него может быть буква или два, и, следовательно, преобразование в int не удастся. Есть ли способ сделать это на строке, чтобы каждый символ, независимо от того, является ли это числом или буквой, будет правильно вписываться в формат?
Работает как очарование! Я извлек это в метод обертки с некоторой проверкой и обработкой ошибок. Благодаря! – Kevin
Я должен действительно правильно изучить Regex. Очень хорошее решение этой проблемы. –
@ Øyvind Если это помогает, мне нравится использовать http://www.regular-expressions.info/tutorial.html для справки. Они также говорят о различных ароматах регулярных выражений, предоставляемых различными двигателями. –