今天我学习了正则表达式。今天我还发现我正则表达式很糟糕!
我一直在研究它们,了解了一些功能,但我真正需要的却远远超出了我目前的知识。
由于有数千行这样的内容,我需要转换以下内容:
"MeshURL": "http://cloud-3.steamusercontent.com/ugc/1689401550837946539/FEC7DBCEEDA29A385ADE5D797055307ADB992B03/", "DiffuseURL": "http://cloud-3.steamusercontent.com/ugc/1689401550837944885/196661E00A9EF450B9F008C9126DE66B25E4AAA0/", "ColliderURL": "http://cloud-3.steamusercontent.com/ugc/1689401550837946539/FEC7DBCEEDA29A385ADE5D797055307ADB992B03/",
分为以下内容:
"MeshURL": "file:///C:\Users\X\Documents\My Games\Tabletop Simulator\Mods\Models\httpcloud3steamusercontentcomugc1689401550837946539FEC7DBCEEDA29A385ADE5D797055307ADB992B03", "DiffuseURL": "file:///C:\Users\X\Documents\My Games\Tabletop Simulator\Mods\Images\httpcloud3steamusercontentcomugc1689401550837944885196661E00A9EF450B9F008C9126DE66B25E4AAA0", "ColliderURL": "file:///C:\Users\X\Documents\My Games\Tabletop Simulator\Mods\Models\httpcloud3steamusercontentcomugc1689401550837946539FEC7DBCEEDA29A385ADE5D797055307ADB992B03",
为了便于解析,区别如下:
- 从原始 URL 中删除所有符号,使其成为纯文本。
- 将“http://”替换为 file:///address (地址位置取决于行中的第一个单词)
我不确定这有多复杂,但我认为可能需要分多个步骤解决。另外,为了简单起见,我可能需要将所有文件重新定位到一个文件夹中。尽管复制粘贴解决方案会让我高兴,但任何建议都会受到赞赏!
感谢您的时间。
编辑:因此我能够使用 http[^"]+ 搜索 URL,并且能够使用 [^a-zA-Z0-9] 搜索符号,但我不知道如何组合搜索条件。
编辑 2:**在其他地方找到帮助并编写了流程脚本。感谢您的建议。**
答案1
我认为sed
很快就能完成。但你不愿意学习。我还认为最大的问题是 c:/ 部分,如果你摆脱了它,那么一切都会变得禅意。