Asp classic 使用经典asp在右侧的特定位置插入空格

Asp classic 使用经典asp在右侧的特定位置插入空格,asp-classic,Asp Classic,我正在处理SQL2008数据库中大约60000个条目的一些英国邮政编码数据,需要处理包含邮政编码的字符串 原始表单数据是在没有验证的情况下收集的,因此邮政编码以不同的格式保存,因此CA12HW也可以是CA1 2HW(格式正确) 英国邮政编码的长度和字母/数字组合各不相同,唯一的例外是所有代码都以空格数字字母结尾 我只对代码的第一部分感兴趣。因此,我正在考虑编写一段代码,实现以下功能: 1.检查右侧第四个空格 2.如果没有空格,请在右侧插入四分之一 3.在空格处拆分字符串 到目前为止,我已经: P

我正在处理SQL2008数据库中大约60000个条目的一些英国邮政编码数据,需要处理包含邮政编码的字符串

原始表单数据是在没有验证的情况下收集的,因此邮政编码以不同的格式保存,因此CA12HW也可以是CA1 2HW(格式正确)

英国邮政编码的长度和字母/数字组合各不相同,唯一的例外是所有代码都以空格数字字母结尾

我只对代码的第一部分感兴趣。因此,我正在考虑编写一段代码,实现以下功能:

1.检查右侧第四个空格

2.如果没有空格,请在右侧插入四分之一

3.在空格处拆分字符串

到目前为止,我已经:

PostCode = "CA30GX"
SpaceLocate = InStr(PostCode, " ")
If SpaceLocate = 0 Then 'Postcode needs a space
如果唯一的常量是应该有一个空格,那么如何插入一个呢

一旦插入了空格,我就可以根据需要拆分代码

PostcodeArray = Split(Postcode, " ")
现在PostcodeArray(0)等于“CA3”,PostcodeArray(1)等于“0GX”


任何帮助都将不胜感激。

您可以使用
字符串函数来执行此操作:

newCode = left(Postcode,3) & " " & right(Postcode,len(Postcode)-3) 

您只需重新创建字符串:

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

PostCode = Left(PostCode, Len(PostCode) - 3) & " " & Right(PostCode, 3)

对不应该需要所有这些东西。他总是希望结尾有3个字符,所以应该是
Right(3)
。谢谢Joel,但是代码的左边部分可能有2、3或4个字符长。有没有办法只倒数并从右边插入空格?@Darren Cook:是的,这将涉及我的答案与Diodeus的混合。我会发布一个编辑。