VB 怎么对Text内容 进行 替换 查找 *** 作

VB 怎么对Text内容 进行 替换 查找  *** 作,第1张

在VB中,查找一个字符串是否出现在另一个字符串中,可以使用InStr函数,如果它返回一个大于0的值,则表示找到了相应的字符串.Instr函数有两种用法,一种是指定开始查找位置的,一种则不带.

不带查找位置:

InStr("Pack a String.", "a") '返回值:2意为"Pack

a

String."中第2个字符就是找查找的字符串"a"的开始位置.

指定开始查找位置:

Instr(3,"pack a string","a") '返回值:6意为在"pack

a

string"中从第3个字符开始查找,"pack

a

string"中第6个字符就是要查找的字符"a".

这在需要从一个字符串找多次查找特定字符串时很好用,比如,从一长段文字中,找出所有的"name",就可以写一个循环:

Dim iFind As Integer

Do

iFind = InStr(iFind + 1, "my name is abc,you name is def", "name")

If iFind >0 Then Print iFind

Loop While iFind >0另外Instr还可以有第四个参数,用于指定查找时,字符串的比较规则,使用常量vbTextCompare可以忽略字符串间大小写的宏猛梁差别,使用0则必需大小写一致才会匹配成功.

对字符串的替换则使用Replace函数,它最少需要三个参数:将被处理的字符串,要被替换的内容,将被替换成的内容,如:

'将所有的"name"替换为"Name"

Dim strText As String

strText = "my name is abc,you name is def"

strText = Replace(strText, "name", "Name")这个函数还有另外三个可选参数,用于指定替换的开始位置,如果前面InStr函数中的iFind的作用,但它是Replace函数的第四个参数.

Replace的第5个参数用于指定替换 *** 作的执行次蔽运数,一知哪个字符串可能有多个"name",如果只需要替换第一个"name",则可以将第五个参数设置为1如果需要替换前5个"name",则将它设置为5默认是全部替换.

最后可选一个参数和Instr的最后一个可选参数的作用是相同的,就不另行说明了.

新建窗体 放腔改上2个textbox和一个按钮

然后复制一下 放到代码里:

Option Explicit

Private Sub Command1_Click()

Text2.SelText = Text1.Text

End Sub

Private Sub Form_Load()

Text1 = "替换内容"

Text2 = "亩友你要输入的内容"

Command1.Caption = "替换"

End Sub

Private Sub Text2_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

MsgBox "你选中了" &Text2.SelLength &"个伍耐判字符"

End Sub

可能要等三两天才能完成啦,能等吗朋友?

补充:

好的,尽管你描述的不详细,我按照我的理解抓紧给你做了!

完成了:

Private Sub Command1_Click()

Dim A As String, B1 As String, B2 As String, I As Integer

Dim T1 As String, T2 As String

T1 = Text1.Text

Open App.Path &"\VB.txt" For Input As #1

Do Until EOF(1)

Input #1, A

For I = 1 To Len(A)

If Mid(A, I, 1) = " "亮拍 Then Exit For

Next

B1 = Trim(Left(A, I))

B2 = Trim(Right(A, Len(A) - I))

T2 = Replace(T1, B1, B2)

T1 = T2

Loop

Close #1

Text1.Text = T2

End Sub

Private Sub Form_Load()

Text1.Text = "我爱你一生一世.我恨你一辈子"

Command1.Caption = "替换"

End Sub

需要在当前目录下建立一个名称为vb.txt的文件,内容是:

我爱你 你敬灶羡爱我

我恨你 你恨我

(还可以再输入其它的内容,但必须是相同格式)

再补充:

你所举的例子之所以出现错误,是因为它有一点不妥,注意要更换的字符中不能含有半角逗号(,)。因为VB读vb.txt中的信息时,默认把“,”与换行符号一样辩腊对待了。

解决这个问题,如果非要使用逗号,建议使用全角逗号(,)就可以了。

不知道能否解决你的困惑?


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12496341.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存