Вставьте пространство в определенном месте справа с классическим жерехом - PullRequest
0 голосов
/ 09 февраля 2012

Я работаю с некоторыми британскими данными почтового индекса около 60 000 записей в базе данных SQL 2008, и мне нужно манипулировать строкой, содержащей почтовый индекс.

Исходные данные формы были собраны без проверки, поэтому почтовые индексы хранятся в разных форматах, поэтому CA12HW также может быть CA1 2HW (правильно отформатирован).

Почтовые индексы Великобритании различаются по длине и сочетанию букв и цифр, за исключением того, что все коды заканчиваются пробелом Буква.

Меня интересует только просмотр первой части кода, т. Е. Перед пробелом. Поэтому я смотрю на написание кода, который выполняет следующее:

1.Проверьте пробел 4 справа.

2.Если нет места, вставьте одну четвертую справа.

3. Разбить строку на пробел.

Пока у меня есть:

PostCode = "CA30GX"
SpaceLocate = InStr(PostCode, " ")
If SpaceLocate = 0 Then 'Postcode needs a space

Если единственной константой является то, что должен быть пробел 4-й справа, как мне вставить один?

Как только пробел вставлен, я могу разделить код для использования по мере необходимости.

PostcodeArray = Split(Postcode, " ")

Теперь PostcodeArray (0) равен «CA3», PostcodeArray (1) равен «0GX»

Буду признателен за любую помощь.

Ответы [ 2 ]

1 голос
/ 09 февраля 2012

Вы можете просто воссоздать строку:

PostCode = Left(PostCode, 3) & " " & Right(PostCode, 3)
PostcodeArray = Split(PostCode, " ")

Редактировать:

PostCode = Left(PostCode, Len(PostCode) - 3) & " " & Right(PostCode, 3)
0 голосов
/ 09 февраля 2012

Вы можете использовать строковые функции left и right, чтобы сделать это:

newCode = left(Postcode,3) & " " & right(Postcode,len(Postcode)-3) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...