两个字符串连接在一起可以通过“&"或者"+",
但是需要注意的是,有时候用”+“ 连接字符串和其他类型数据时候,使用不当会产生错误。
看一下代码:
- Sub Main()
- Dim sub1 As String = "12"
- Console.WriteLine("字符串:" & sub1)
- Dim sub2 As Integer = 13
- Console.WriteLine("整数:" & sub2)
- Dim s1 As String
- s1 = sub1 & sub2
- Console.WriteLine("使用&连接:" & s1)
- Dim s2 As String
- s2 = sub1 + sub2 '①
- Console.WriteLine("使用+连接:" & s2)
- Console.ReadKey()
- End Sub
输出结果如下:
当然我们更应该减少不明确的两种类型之间的运算。上面例子中①处,我们可以修改为,s2 = sub1 + sub2.ToString。得到的结果和 s1 = sub1 & sub2 相同。
有时候我们需要查找某个字符串中是否包含了别的字符串,这就需要使用到字符串的查找功能了:
需要注意的是,字符串中第一个字符的索引为0:
示例代码如下:
- Sub Main()
- Dim s As String = "http://blog.csdn.net/uruseibest"
- Dim sFind As String = "e"
- '在字符串中查找
- Dim intPos As Integer
- intPos = s.IndexOf(sFind) '①
- Do While intPos > -1
- Console.WriteLine("找到字符串位于:" & intPos)
- intPos = s.IndexOf(sFind,intPos + 1) '②
- Loop
- Dim sFind1 As String = "og"
- intPos = s.IndexOf(sFind1)
- Console.WriteLine("找到字符串位于:" & intPos)
- Dim sFind2 As String = "x"
- intPos = s.IndexOf(sFind2)
- Console.WriteLine("找到字符串位于:" & intPos)
- '反向查找
- Dim sFind3 As String = "e"
- intPos = s.LastIndexOf(sFind3) '③
- Do While intPos > -1
- Console.WriteLine("反向找到字符串位于:" & intPos)
- intPos = s.LastIndexOf(sFind3,intPos - 1,intPos) '④
- Loop
- Console.ReadKey()
- End Sub
①查找字符串s中的第一个字符"e",之后开始循环查找剩下的”e”
②从位置intPos开始查找
③反向查找字符串s中第一次出现的字符"e",即最后一个"e"
④从位置(intPos-1)处,反向查找 intPos个字符中出现的“e”
先前查找e的顺序为:18、25、28;
反向查找的时候顺序为:28、25、18
同时,我们也看到由于"x"在字符串中不存在,所以返回-1。
由于.net平台下C#和vb.NET很相似,本文也可以为C#爱好者提供的参考。
学习更多vb.net知识,请参看 vb.net 教程 目录