Excel-VBA中如何使用split来分割内部含有不定空格的字符串

就是让split适用于1个、2个、3个、4个空格
例如一组字符串是“xx yy zz aa"

1、首先打开office excel软件,接着打开VBA编辑界面。

2、然后在单元格区域当中输入一些内容。

3、接着在VBA编辑器中插入模块。

4、在模块当中输入如下代码进行分割取线,然后运行。

5、最后在单元格B2中输入公式“=Division($A1,"/",COLUMN(A:A))”,然后右拉至D2,公式结果如图所示。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-15
split语法为:split(要分割的内容,分隔符)
根据题意,举例如下:
1、Split(内容," "),即可分割内部还有不定空格的内容
2、分割后为一维数组
3、空个数量不定,可能或产生空元素,需要循环,重新去除非空元素即可。
第2个回答  推荐于2017-09-22

可以用正则把多个空格变成一个后,在split

dim reg,str as string
str="a   b c   d"
set reg=createobject("vbscript.regexp")
reg.pattern="\s+"
msgbox reg.replace(str," ")
'arr=split(reg.replace(str," ")," ")

追问

复制了你的代码,只能将a和b之间的多个空格变为1个,b和c、c和d之间的空格还是那么多

追答dim reg,str as string
str="a   b c   d"
set reg=createobject("vbscript.regexp")
reg.pattern="\s+"
reg.global=true'加上全局匹配应该就可以了。
msgbox reg.replace(str," ")
'arr=split(reg.replace(str," ")," ")

本回答被提问者和网友采纳
第3个回答  2015-10-27
System.out.println("asf1dskf 2 df(3)df".replaceAll("[^\\d]*(\\d)[^\\d]*", "$1\n"));
第4个回答  2015-04-29
先用多次的replace把双空格转换成单空格。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网