拆分功能无法从从互联网页面源复制的文本中识别白色 space
Split function isn't recognising white space from text copied from internet page source
我已经设置了一个函数来处理复制和特殊粘贴(仅值)到我的工作表上的数据。
有问题的数据是一个名字 "John A Smith"
而我的方法是
Dim vFullName As Variant
Let vFullName = Split(sName, " ")
当我拆分粘贴的字符串时,我只得到 2 个数组; [0] 约翰和 [1] 史密斯
如果我自己输入数据,我会得到预期的 3 个数组; [0] 约翰,[1] A & [2] 史密斯
我不明白为什么粘贴的字符串没有完全分开。谁能告诉我为什么第二个 space 没有被注册。
空间实际存在。
干杯
运行这首:
Sub CheckWhitespace(strCheck As String)
For i = 1 To Len(strCheck)
If Not Mid(strCheck, i, 1) Like "[a-zA-Z]" Then Debug.Print "Chr value of whitespace (pos " & i & "): ";Asc(Mid(strCheck, i, 1))
Next
End Sub
然后看看 Chr
值是什么,一旦你知道你可以使用 Replace()
函数将它转换为 space 然后拆分该字符串,例如:
strArray = Split(Replace(sName, Chr(10), Chr(32)), Chr(32))
不要假设它是一个空格,而是使用两个单词之间的字符将其拆分。意思是,复制字符并将其粘贴到您的拆分函数中。
我已经设置了一个函数来处理复制和特殊粘贴(仅值)到我的工作表上的数据。
有问题的数据是一个名字 "John A Smith"
而我的方法是
Dim vFullName As Variant
Let vFullName = Split(sName, " ")
当我拆分粘贴的字符串时,我只得到 2 个数组; [0] 约翰和 [1] 史密斯
如果我自己输入数据,我会得到预期的 3 个数组; [0] 约翰,[1] A & [2] 史密斯
我不明白为什么粘贴的字符串没有完全分开。谁能告诉我为什么第二个 space 没有被注册。
空间实际存在。
干杯
运行这首:
Sub CheckWhitespace(strCheck As String)
For i = 1 To Len(strCheck)
If Not Mid(strCheck, i, 1) Like "[a-zA-Z]" Then Debug.Print "Chr value of whitespace (pos " & i & "): ";Asc(Mid(strCheck, i, 1))
Next
End Sub
然后看看 Chr
值是什么,一旦你知道你可以使用 Replace()
函数将它转换为 space 然后拆分该字符串,例如:
strArray = Split(Replace(sName, Chr(10), Chr(32)), Chr(32))
不要假设它是一个空格,而是使用两个单词之间的字符将其拆分。意思是,复制字符并将其粘贴到您的拆分函数中。