一般的文本编辑器都只支持单个替换,多个同时替换有好的解决办法吗
1
blackeeper 2019-05-31 22:31:49 +08:00
正则替换就可以了
|
2
ybyqiji OP @blackeeper 从网上看到这个批处理文件,不太成功,问题出在哪里了呢,技术不太行,只能照葫芦画瓢
Private Sub Command1_Click() Dim FileNumber1, FileNumber2, Str As String FileNumber1 = FreeFile '得到一个未使用的文件号。 Open "D:\gif-00000\123.txt" For Input As #FileNumber1 '打开要读取的文件 FileNumber2 = FreFile Open "D:\gif-00000\abc.txt" For Output As #FileNumber2 '打开要写入的文件 While Not EOF(1) ‘直到最后一行 Line Input #FileNumber1, Str ’按行读取文件 Str = Replace(Str, "lkjhgiu111", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu112", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu113", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu114", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu115", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu116", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu117", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu118", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu119", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu120", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu121", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu122", "大") ‘替换第一个字符 Str = Replace(Str, "lkjhgiu123", "大") ‘替换第一个字符 Print #FileNumber2, Str '写入替换后的内容 Wend Close #FileNumber1 '关闭文件 Close #FileNumber2 '关闭文件 End Sub |
3
silentstorm 2019-05-31 22:48:11 +08:00 via Android
楼上这写的是什么玩意儿呀
|
4
opengps 2019-05-31 22:49:27 +08:00 via Android 1
4 次全文替换搞定了
|
5
silentstorm 2019-05-31 22:49:48 +08:00 via Android
随便一个高级文本编辑器都支持正则替换
|
6
hoyixi 2019-05-31 22:52:12 +08:00
|
7
ysc3839 2019-05-31 22:55:32 +08:00 via Android
发一段示例文本吧,不知道你说的 a,b,c,d 是什么情况。
|
8
ybyqiji OP 不太会用正则替换,用了批处理 搞定了 谢谢各位啦
|
9
ys0290 2019-05-31 23:00:25 +08:00 via iPhone
sed -i 's/\|a\|b\|c/w/g' file
这样? |
10
ys0290 2019-05-31 23:01:07 +08:00 via iPhone
a 前面的\|划掉
|
11
ybyqiji OP 网上找的这个 一葫芦画瓢 搞定了
@echo off (For /f "delims=" %%i in (a.txt) do (Set str=%%i SetLocal EnableDelayedExpansion Set str=!Str:Helloo=hello! Set str=!Str:Helloo=hello! Set str=!Str:Helloo=hello! echo !str! EndLocal ))>1.txt start 1.txt pause>nul |
12
des 2019-05-31 23:09:07 +08:00
建议学一下正则表达式,以后遇到这种东西都方便很多
基本上现在稍稍高级点的编辑器都支持正则替换 像这样: 如果是想匹配不是单词的字母可以这样 |
13
chrisliu1314 2019-06-01 00:27:58 +08:00 via iPhone
好多编辑器,比如,vscode,都支持批量替换啊
|
14
silentstorm 2019-06-01 05:54:49 +08:00 via Android
@hoyixi
我知道这是 vba,关键是这写的是什么乱七八糟的啊 |
15
Jirajine 2019-06-01 06:21:01 +08:00 via Android
楼主你起码学一门脚本语言吧。。
|
16
flynaj 2019-06-01 08:10:28 +08:00 via Android
经常处理文档学一下 Linux 命令,现在 Windows10 下 wsl 可以用,sed -i,2 楼那个多少行的 VBS,一个 sed 就 1 解决。
|
17
mzname 2019-06-01 08:48:54 +08:00 via iPhone
渣渣表示只会用 word
勾选通配符 将 [a,b,c,d] 替换为 w |
18
oneisall8955 2019-06-01 11:10:24 +08:00 via Android
sed+regex
|
19
jifengg 2019-06-03 10:20:22 +08:00
F12,运行:
```javascript "qabcde,c,ccc,dfdfdf".replace(/[abcd]1?/g,'w'); ``` |