建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

VBA中数组的合并与拆分(Join和Split),筛选(filter)的实际应用(JavaScript中split和join有什么不一样?)

GG网络技术分享 2025-03-18 16:13 0


VBA中数组的合并与拆分(Join和Split),筛选(filter)的实际应用

大家好,我们今日继续讲解VBA代码解决方案的第63讲内容:数组的合并与字符串拆分(Join & Split),及筛选filter函数的应用

一Join函数:返回一个字符串,该字符串是通过连接某个数组中的多个子字符串而创建的,语法如下:

Join(sourcearray[, delimiter])

参数sourcearray是必需的,包含被连接子字符串的一维数组。

参数delimiter是可选的,在返回字符串中用于分隔子字符串的字符,如果忽略则使用空格(\" \")来分隔子字符串。则列表中的所有项目都连接在一起,中间没有分隔符。

二:split函数:这个函数的讲解在之前已经讲过,不再多说了。

多个字符的合并和字符串按规律的拆分是经常遇到的,如:A-REW-E-RWC-2-RWC 按分隔符\"-\"拆分成6个字符放在一个数组中;有一组数array(23,45,7,1,76)想用分隔符-连接成一个字符串

上面两种情况的实现即用到:split(字符串,\"分隔符\") 拆分字符串。join(数组,\"分隔符\") 用分隔连接数组的每个元成一个字符串

实例一:

Sub Myst()

Dim arr, myst As String

myst = \"A-REW-E-RWC-2-RWC\"

arr = Split(myst, \"-\")

MsgBox arr(0) \'显示数组的第一个数(分隔后的数组最小下标为0,不是1),显示结果为A

MsgBox Join(arr, \",\") \'再用\",\"把数组的每个值连接成一个字符串,结果为\"A,REW,E,RWC,2,RWC\"

End Sub

值得注意的是:split和join只能对一维数组进行操作,

实例二:

Sub MyJoin()

Dim strJoin As String

strJoin = Join(Array(\"a\", \"b\", \"c\"), \",\")

MsgBox strJoin

End Sub

三:Filter函数:返回一个下标从零开始的数组,该数组包含基于指定筛选条件的一个字符串数组的子集。filter()是数组的一个常用操作,它用于把Array的某些元素过滤掉,然后返回剩下的元素。

语法:Filter(sourcesrray, match[, include[, compare]])

sourcesrray必须的。要执行搜索的一维字符串数组。

match必须的。要搜索的字符串。

include可选的。Boolean值,表示返回子串包含还是不包含match字符串。如果include是True,Filter返回的是包含match子字符串的数组子集。如果include是False,Filter返回的是不包含match子字符串的数组子集。

compare可选的。数字值,表示所使用的字符串比较类型。

Filter函数实现数组筛选:数组的筛选就是根据一定的条件,从数组中筛选符合条件的值,组成一个新的数组,实现数组筛选的Filter函数用法:Filter(数组, 筛选的字符, 是否包含)

实例三:

Sub MyFD() \'实例三

arr = Array(\"ABC\", \"A\", \"D\", \"CA\", \"ER\")

arr1 = VBA.Filter(arr, \"A\", True)

arr2 = VBA.Filter(arr, \"A\", False)

MsgBox Join(arr2, \",\")

End Sub

遗憾的是函数只能进行模糊筛选,不能精确匹配。

实例四:查找数组的差集

Sub Filter1()

Dim varArr1 As Variant

Dim varArr2 As Variant

Dim i As Integer

varArr2 = Array(1021, 1023, 1025)

varArr1 = Array(1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028)

For i = 0 To UBound(varArr2)

varArr1 = VBA.Filter(varArr1, varArr2(i), False)

Next i

MsgBox Join(varArr1)

End Sub

注意,filter函数在此是模糊查找,下面代码将无法返回我们想要的值.

代码截图:

运行结果一:

运行结果二:

运行结果三:

运行结果四:

今日内容回向:

1 VBA数组的三个函数是什么?

2 数组筛选时两个方案是什么?

JavaScript中split和join有什么不一样?

JavaScript中split和join有什么不一样? (https://www.wpmee.com/) javascript教程 第1张

JavaScript中split和join有什么不一样?今天随小编一起了解一下。

1、split()用于分割字符串,返回一个数组

例如:

varstring=“helloworld?name=xiaobai”;

varsplitString=string.split(\"?\");

console.log(splitString);//[\"helloworld\",\"name=xiaobai\"]

split()只有一个参数时:分割的字符串或正则表达式;两个参数时,第二个参数是指返回的数组中元素的个数;

2、join()用于连接多个字符或字符串,返回值为一个字符串

例如:

vararr=newArray();

arr[0]=\"hello\";

arr[1]=\"xiao\";

arr[2]=\"bai\";

arr.join(\"&\");//\"hello&xiao&bai\"

join();//默认分割符为逗号;

以上就是JavaScript中split和join的区别的详细内容。

标签:

提交需求或反馈

Demand feedback