VB.NET Mid函数相关应用方法解析
创始人
2024-06-21 16:40:52
0

VB.NET编程语言中有很多函数的应用比较复杂,需要我们通过不断的实践,积累经验才能熟练的掌握,并正确的将他们应用在程序中,完成我们的需求。在这里我们就会为大家介绍其中的VB.NET Mid函数的相关应用。

VB.NET Mid函数一般用于返回原字符串中子串,比如说

  1. Dim MyString, FirstWord, LastWord, MidWords  
  2. MyString = "Mid Function Demo" 建立一个字符串。  
  3. FirstWord = Mid(MyString, 1, 3) ' 返回 "Mid"。  
  4. LastWord = Mid(MyString, 14, 4) ' 返回 "Demo"。  
  5. MidMidWords = Mid(MyString, 5) ' 返回 "Funcion  

 

具体函数说明如下:

返回 Variant (String),其中包含字符串中指定数量的字符。

语法

  1. Mid(string, start[, length]) 

Mid 函数的语法具有下面的命名参数:#t#

string

必要参数。字符串表达式,从中返回字符。如果 string 包含 Null,将返回 Null。

start

必要参数。为 Long。string 中被取出部分的字符位置。如果 start 超过 string 的字符数,VB.NET Mid函数返回零长度字符串 ("")。

length

可选参数;为 Variant (Long)。要返回的字符数。如果省略或 length 超过文本的字符数(包括 start 处的字符),将返回字符串中从 start 到尾端的所有字符。

说明

欲知 string 的字符数,可用 Len 函数。

注意 MidB 函数作用于字符串中包含的字节数据,如同在双字节字符集(DBCS)语言中一样。因此其参数指定的是字节数,而不是字符数。对于使用 MidB的示例代码,请参阅示例主题中的第二个示例。

那么我们是否可以利用它来进行一些字符串替换呢?请在你机器上运行下面函数:

 

  1. Option Explicit  
  2. Public Function Test() As String  
  3. Dim s As String  
  4. s = "ABCD" 
  5. Mid(s, 1, 1) = "T"  
  6. Test = s  
  7. End Function 

 

你发现什么了?WOW,输出字符串变成“TBCD”了! 是的,我们可以利用VB.NET Mid函数来实现字符串的替换(非常令人高兴的事情)!那么如果我把“T”变成“TX”呢?请看下面代码:

 

  1. Option Explicit   
  2. Public Function Test() As String  
  3. Dim s As String  
  4. s = "ABCD" 
  5. Mid(s, 1, 1) = "TX"  
  6. Test = s  
  7. End Function 

 

再运行一次,不出所料,它还是“TBCD“。虽然VB.NET Mid函数能够做一些简单的字符串的替换,但是它的前提条件是字符串不能够超过它的返回长度(例子中的是1)。那么可能有些网友会问,如果小于它的返回长度会发生什么呢?嗯,好的想法,还是让实验结果来说明它吧,请看:

 

  1. Option Explicit   
  2. Public Function Test() As String  
  3. Dim s As String  
  4. s = "ABCD" 
  5. Mid(s, 1, 3) = "TX"  
  6. Test = s  
  7. End Function 

 

运行后它的结果如下:”TXCD”。

从上面的结果来看,Mid能够做一些简单的字符串替换,但是必须遵循以下条件:

替换的***长度由Mid返回的***长度决定。如果替换串的长度大于它的返回长度,那么只有替换串的前面一部分用于替换。如果替换串的长度小于它的返回长度,那么原字符串中超过部分将被保留,而其它部分被替换。虽然VB.NET Mid函数在某些场合有很巧的功能,但是如果涉及到常用字符串操作,个人建议还是尽量用Replace(expression, find, replace[, start[, count[, compare]]])来完成。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...