【发布时间】:2016-03-09 07:50:57
【问题描述】:
我有一个包含各种字符串的文本文件“info.txt”。 我想找到字符串 '"masterstring":' 的第一次出现 并将 '"masterstring":' 之后的所有内容替换为 "replacement data text" 但只到下一个逗号, 使用 .bat 脚本最快的方法是什么?
【问题讨论】:
-
我的第一反应是看看 perl。你可以写一个正则表达式替换某些文本并且速度很快
-
到目前为止您尝试过什么?你知道命令
find或findstr,还有for /F吗?在命令提示符下键入命令后跟/?以获取详细信息... -
一般情况下,你能想出什么。比如
\"masterstring\":([^,]*),即匹配“masterstring”和一个冒号,然后将所有内容捕获到一个组中的逗号。有关工作演示,请参阅 this regex101 fiddle。但是,这看起来像是一些json文件,所以也许有更好的方法,例如解析和替换。 -
感谢你们的帮助。不幸的是,在这种情况下,我只能使用 bat 或 vbs 文件来执行此操作。有什么想法吗?
标签: regex batch-file replace find