vbscript Split函数用法详解(字符串转数组函数)

vbscript Split 函数用法

用法:传回数组 = Split(原始字串, 要找的字串, 拆成几个数组)
描述
返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
语法
Split(expression[, delimiter[, count[, compare]]])

例如用逗号(,)分割字符串为数组

代码如下:

str="1,2,3,4"
strarr=split(str,",")
for i=0 to ubound(strarr)
msgbox strarr(i)
next

Split函数语法有如下几部分:

部分 描述
expression 必需的。包含子字符串和分隔符的字符串表达式 。如果expression是一个长度为零的字符串(""),Split则返回一个空数组,即没有元素和数据的数组。
delimiter 可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的 expression字符串。

count 可选的。要返回的子字符串数,-1表示返回所有的子字符串。
compare 可选的。数字值,表示判别子字符串时使用的比较方式。关于其值,请参阅“设置值”部分。

参数的设置
设置值
compare参数的设置值:

常数 值 描述
vbUseCompareOption -1 用Option Compare语句中的设置值执行比较。
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行文字比较。
vbDatabaseCompare 2 仅用于Microsoft Access。基于您的数据库的信息执行比较。

代码如下:

Private Sub Command1_Click()
Dim MyStr As String
MyStr = "1234567123456712345"
MyStrs = Split(MyStr, "67")
For Each Strs In MyStrs
Print Strs
Next
End Sub

输出结果:"12345"、"12345"、"12345"

代码如下:

'这个VB程序是让求10个学生的考试成绩的平均分..
'比如95 85 70 75 80 90 60 65 95 100
'这10个人的分数的平均分...
Private Sub Form_Load()
Dim A$(), i As Long, intB As String, s As Integer
If Dir("d:\平均分.dat") = vbNullString Then
Open "d:\平均分.dat" For Output As #1
Print #1, "95 85 70 75 80 90 60 65 95 100"
Close #1
End If
Open "d:\平均分.dat" For Input As #1
Input #1, intB
Close #1
A = Split(intB, Space(1), -1, 1)
For i = 0 To UBound(A, 1)
Debug.Print A(i); " ";
s = s + A(i)
Next i
Debug.Print ",10个学生的平均成绩是 :" & s / 10
End Sub
Private Sub command1_Click()
Dim AString As String
Dim r() As String '把变量按照“,”分割出来的数组
Dim rt As String '最终的结果,用换行符代替“,”
Dim C As Integer '这个是循环用的
AString = "高级,中级,低级,先进"
r = Split(AString, ",") '把每个目录都分解出来
For C = 0 To UBound(r) 'C由0开始循环到r数组的最大下标
rt = rt & vbCrLf & vbCrLf & r(C) '把数组的每一个元素都添加到rt,用回车分割
Next C '循环
MsgBox rt '输出
End Sub
Private Sub Form_Load()
Dim strTextDate As String
strTextDate = "2008-12-1 星期一"
MsgBox Format(Split(strTextDate)(0), "yyyy-mm-dd")
End Sub
当小括号中写0时,返回数组中第一个元素,小括号中写1时返回数组中第二个元素。依此类推,用这种写法返回数据时,必须用一个空格把字符串分开,其它字符仅当做一个数据。例:
Private Sub Form_Load()
Dim AString As String
AString = "高级 中级 低级 先进"
MsgBox Split(AString)(0)
MsgBox Split(AString)(1)
MsgBox Split(AString)(2)
MsgBox Split(AString)(3)
End Sub

以下只返回 高级,中级,低级,先进 仅当作一个串,即只能返回Split(AString)(0)的值,其它值都产生下标越界错误。所以用以下方法分解时,只能用一个空格分割,而不能用其它字符分割.

代码如下:

Private Sub Form_Load()
Dim AString As String
AString = "高级,中级,低级,先进"
MsgBox Split(AString)(0)
MsgBox Split(AString)(1)
MsgBox Split(AString)(2)
MsgBox Split(AString)(3)
End Sub

split 命令用途
将文件分割成几段。
语法
要将一个文件分割成包含指定行数的多个文件
split [ -l LineCount ] [ -a SuffixLength ] [ File [ Prefix ] ]
要将一个文件分割成包含指定字节数的多个文件
split -b Number [ k | m ] [ -a SuffixLength ] [ File [ Prefix ] ]
描述
split 命令读取指定文件,以 1000 行大小写在一组输出文件上。第一个输出文件名由指定前缀(缺省值 x)和 aa 后缀组合构成,第二个文件名由前缀和 ab 后缀组合构成,如此按字典顺<img class="img InsertH2" alt="段落标题" src="../../System/_resource/blank.gif">序一直到 zz(最多 676 个文件)。后缀的字母数及因此的输出名称文件数可用 -a 标志增加。
您指定的 Prefix 不能长于 PATH_MAX - 2 个字节(如果指定了 -a 标志,则不能长于 PATH_MAX - SuffixLength 个字节)。PATH_MAX 变量指定系统的最大路径名的长度( 在 /usr/include/sys/limits.h 文件中定义)。
如果您不指定输入文件或如果您指定 -(减号)文件名,那么 split 命令从标准输入读取文件。
标志
注:-b 和 -l 标志是互斥的。
-a SuffixLength 指定用于形成输出名称文件后缀部分的字母数。字母数确定可能的输出文件名组合数。缺省是两个字母。
-b Number 将文件分割成 Number 变量指定的字节数。将 k(千字节)或 m(兆字节)乘数加到 Number 值的末尾使文件分别分割成 Number*1024 字节或 Number*1,048,576 字节的几个段。
-l LineCount 指定每个输出文件的行数。缺省值是 1000 行。
退出状态
该命令返回以下退出值:
0 命令成功运行。
>0 发生错误。
示例

代码如下:

1. 要将文件分割成 1000 行的段,请输入:
split book
此示例将 book 分割成 1000 行的段,命名为 xaa、 xab、 xac 等等。
2. 要将文件分割成 50 行的段并指定文件名前缀,请输入:
split -l 50 book sect
此示例将 book 分割成 50 行的段,命名为 sectaa、sectab、sectac 等等。
3. 要将文件分割成 2KB 的段,请输入:
split -b 2k book
此示例将 book 分割成 2*1024 字节的段,命名为 xaa、xab、xac 等等。
4. 要将文件分割成 676 个以上的段,请输入:
split -l 5 -a 3 book sect
此例将 book 分割成 5 行的段,命名为 sectaaa、sectaab、 sectaac 等等,直到 sectzzz(最多 17,576 个文件)。

(0)

相关推荐

  • VBS教程:函数-Split 函数

    Split 函数 返回基于 0 的一维数组,其中包含指定数目的子字符串. Split(expression[, delimiter[, count[, start]]]) 参数 expression 必选项.字符串表达式,包含子字符串和分隔符.如果 expression 为零长度字符串,Split 返回空数组,即不包含元素和数据的数组. delimiter 可选项.用于标识子字符串界限的字符.如果省略,使用空格 ("") 作为分隔符.如果 delimiter 为零长度字符串,则返回包含

  • vbscript Split函数用法详解(字符串转数组函数)

    vbscript Split 函数用法 用法:传回数组 = Split(原始字串, 要找的字串, 拆成几个数组) 描述返回一个下标从零开始的一维数组,它包含指定数目的子字符串.语法Split(expression[, delimiter[, count[, compare]]]) 例如用逗号(,)分割字符串为数组 复制代码 代码如下: str="1,2,3,4"strarr=split(str,",")for i=0 to ubound(strarr)msgbox

  • Python的Lambda函数用法详解

    在Python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数.今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式. 1.为什么要用lambda函数? 先举一个例子:将一个列表里的每个元素都平方. 先用def来定义函数,代码如下 def sq(x): return x*x map(sq,[y for y in range(10)]) 再用lambda函数来编写代码 map(lambda x: x*x,[y for y in r

  • JavaScript中eval()函数用法详解

    eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行. 如果参数是一个表达式,eval() 函数将执行表达式.如果参数是Javascript语句,eval()将执行 Javascript 语句. 语法 复制代码 代码如下: eval(string) 参数 描述 string 必需.要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句. eval()函数用法详解: 此函数可能使用的频率并不是太高,但是在某些情况下具有很大的作用,下面就介绍一下eva

  • python isinstance函数用法详解

    这篇文章主要介绍了python isinstance函数用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 isinstance() 函数来判断一个对象是否是一个已知的类型类似 type(). isinstance() 与 type() 区别: type() 不会认为子类是一种父类类型,不考虑继承关系. isinstance() 会认为子类是一种父类类型,考虑继承关系. 如果要判断两个类型是否相同推荐使用 isinstance(). 语法

  • C语言fgetc和fputc函数用法详解(以字符形式读写文件)

    在C语言中,读写文件比较灵活,既可以每次读写一个字符,也可以读写一个字符串,甚至是任意字节的数据(数据块).本节介绍以字符形式读写文件. 以字符形式读写文件时,每次可以从文件中读取一个字符,或者向文件中写入一个字符.主要使用两个函数,分别是 fgetc() 和 fputc(). 字符读取函数 fgetc fgetc 是 file get char 的缩写,意思是从指定的文件中读取一个字符.fgetc() 的用法为: int fgetc (FILE *fp); fp 为文件指针.fgetc() 读

  • C++ getline函数用法详解

    虽然可以使用 cin 和 >> 运算符来输入字符串,但它可能会导致一些需要注意的问题. 当 cin 读取数据时,它会传递并忽略任何前导白色空格字符(空格.制表符或换行符).一旦它接触到第一个非空格字符即开始阅读,当它读取到下一个空白字符时,它将停止读取.以下面的语句为例: cin >> namel; 可以输入 "Mark" 或 "Twain",但不能输入 "Mark Twain",因为 cin 不能输入包含嵌入空格的字符串

  • C语言之strtol函数用法详解

    strtol 函数用法 strtol是一个C语言函数,作用就是将一个字符串转换为长整型long,其函数原型为: long int strtol (const char* str, char** endptr, int base); 下面我们来看下每个参数的意义: str是要转换的字符 enptr是指向第一个不可转换的字符位置的指针 base的基数,表示转换成为几进制的数 两点注意: 当 base 的值为 0 时,默认采用 10 进制转换,但如果遇到 '0x' / '0X' 前置字符则会使用 16

  • Java之Pattern.compile函数用法详解

    除了Pattern Pattern.compile(String regex), Pattern类的compile()方法还有另一个版本: Pattern Pattern.complie(String regex,int flag),它接受一个标记参数flag,以调整匹配的行为. flag来自以下Pattern类中的常量: 编译标记 效果 Pattern.CANON_EQ 两个字符当且仅当它们的完全规范分解相匹配时,就认为它们是匹配的,例如,如果我们指定这个标记,表达式a\u030A就会匹配字符

  • python中的Json模块dumps、dump、loads、load函数用法详解

    目录 json的作用 python中的Json模块dumps.dump.loads.load函数用法详解 1.json.dumps()和loads() 2.json.dump()和json.load() 3.如何读取写入多行数据呢? json的作用 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式 json.dumps(): 对数据进行编码,把python对象转换为字符串数据json.loads(): 对数据进行解码,把json的字符串转换为pyth

  • Python中flatten( )函数及函数用法详解

    flatten()函数用法 flatten是numpy.ndarray.flatten的一个函数,即返回一个一维数组. flatten只能适用于numpy对象,即array或者mat,普通的list列表不适用!. a.flatten():a是个数组,a.flatten()就是把a降到一维,默认是按行的方向降 . a.flatten().A:a是个矩阵,降维后还是个矩阵,矩阵.A(等效于矩阵.getA())变成了数组.具体看下面的例子: 1.用于array(数组)对象 >>> from n

随机推荐