后更换数据我有一个包含各种字符串文本文件“info.txt”。 我想找到字符串“‘masterstring’:”第一次出现 并更换后一切“‘masterstring’:”用“替换数据文本”,但只有直到下一个逗号, 是什么做的最快方法这与一个.bat脚本?字符串,字符串,直到下一个逗号
回答
您可以编写一个.VBS脚本来执行此操作,但是使用JScript更容易,因为批处理和JScript代码可以在具有.BAT扩展名的相同混合文件中组合使用。我复制了解决方案this post,并稍微修改了该请求。
@set @a=0 /*
@cscript //nologo //E:JScript "%~F0" <input.txt> output.txt
@goto :EOF */
WScript.Stdout.Write(WScript.StdIn.ReadAll().replace(/masterstring.*,/,"masterstring replacement data text,"));
您还没有发布样本数据,所以我创建了一个简单的输入文件:
First line in data file.
First line with masterstring and data to be replaced, preserve text after comma.
Other line with masterstring and other data, that must not be changed.
Last line in file.
这是输出:
First line in data file.
First line with masterstring replacement data text, preserve text after comma.
Other line with masterstring and other data, that must not be changed.
Last line in file.
有关此方法的进一步详情,请参阅上面的链接以及该帖子中的链接。您也可以在本网站中搜索“jscript替换”和“jscript混合”,使用batch-file
标签。
谢谢。这是正确的道路,但我有一些问题。我如何找到以下内容,并加上引号:“masterstring”:“ – user3552978
您应该使用_code tags_清楚地分隔您的示例。是否”masterstring“:”'或'“masterstring”:'?任何其他?请根据这种输入发布一个简短的输入示例和所需的输出;否则这只是一个猜谜游戏...编辑你的问题(不要在评论中发布数据)并使用代码标签! – Aacini
- 1. Python字符串获得领先的字符,直到达到第一个逗号
- 2. 串联一个逗号字符的字符串
- 3. URL查询字符串在字符串中有一个逗号
- 4. Convert.ToInt32()一个字符串与逗号
- 5. 独立字符串逗号
- 6. 添加逗号字符串
- 7. 逗号分隔符号字符串
- 8. 将逗号分隔字符串转换为多个字符串
- 9. 串联列值到一个逗号分隔的字符串
- 10. 串联列值到一个逗号分隔的字符串
- 11. 在Java中,删除字符串的第一个字符(逗号)(逗号)
- 12. 字符串的最后一个字符前加逗号在C#
- 13. 在一个字符串忽略逗号之间用逗号
- 14. Linq列表到逗号的字符串
- 15. 搜索逗号IDS分隔字符串以逗号分隔字符串
- 16. 子串直到字符串
- 17. RegEx匹配某个字符串,直到下一次出现此字符串
- 18. 从字符串1打印下一个x行,直到字符串2
- 19. 字符串过滤逗号和数字
- 20. JavaScript字符串数组到多个字符串用逗号分隔
- 21. 如何在主字符串中找到多个逗号分隔的字符串
- 22. 在字符串中输入字符,直到下一个字符为整数 - C
- 23. 从字符串中选择,直到下一个字符为英文字符
- 24. 将字符串的Arraylist转换为一个逗号分隔的字符串
- 25. 用逗号连接字符串以加入长字符串
- 26. 将字符串[]转换为逗号分隔的字符串。
- 27. 矢量将字符串转换为逗号字符串?
- 28. 字符串分割保持逗号字符串
- 29. 如何获取逗号分隔字符串的子字符串?
- 30. 正则表达式的字符串,直到转义逗号
我的第一反应是看看perl的。你可以写一个正则表达式替换某些文本,并且速度很快 – lordkain
到目前为止你尝试了什么?你知道命令'find'或'findstr',还有'for/F'吗?在命令提示符下键入命令后加'/?'以获取详细信息... – aschipfl
通常,您可以想出某事。像'\“masterstring \”:([^,] *)'即,匹配“masterstring”和冒号字面上,然后捕捉一切到一个组中的逗号。查看[this regex101 fiddle](https://regex101.com/r/rF4aV3/1)查看工作演示。然而,这看起来像是一个'json'文件,所以也许有更好的方法,例如解析和替换。 – Jan