用vba可以实现,不难。要看你具体做什么,下面是一个录制的宏,替换aaa为axa,然后替换bbb为xbx。
创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、网站建设、赛罕网络推广、小程序制作、赛罕网络营销、赛罕企业策划、赛罕品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供赛罕建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
Sub 宏2()
'
' 宏2 宏
'
'
Cells.Replace What:="aaa", Replacement:="axa", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace What:="bbb", Replacement:="xbx", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim txt As String = My.Computer.FileSystem.ReadAllText("c:\新建 文本文档.txt", System.Text.Encoding.Default) '先读取文本中所有内容
My.Computer.FileSystem.WriteAllText("c:\新建 文本文档.txt", "", False, System.Text.Encoding.Default) '清空原文本内容
Dim AllLine() = Split(txt, vbCrLf) '按回车符号切割成数组
For i As Integer = 0 To UBound(AllLine) '循环数组
' AllLine(i) = Replace(AllLine(i), "000", "111") '如果所有行都是统一转换则本条生效
If i = 5 Then '只转换第六行 起始是0,所以5实际为第6行
AllLine(i) = Replace(AllLine(i), "000", "111")
End If
My.Computer.FileSystem.WriteAllText("c:\新建 文本文档.txt", AllLine(i) vbCrLf, True, System.Text.Encoding.Default) '按行重新写入
Next
End Sub
x="a[11dsfsf]b"
b=x.lastindexof("]")
a=x.indexof("[")
x=x.substring(0,a) "0" x.substring(b)
在你的工程中引用Microsoft Script Control 1.0 这个COM组件(注意是COM的,不要到.net组件里去找)
然后用下面的方法执行JavaScript:
Dim sc As New MSScriptControl.ScriptControl
sc.Language = "JavaScript" '设置语言种类
sc.AddCode("function TestFunc(){return 'Hello world!'}") '添加脚本代码
MsgBox(sc.Run("TestFunc")) '显示一下那段脚本的返回值(这里你将看到Hello world!字符)
虽然这个人的回答出来了但是没有解决你的问题,以上是我补充的如何使用脚本。