标题: [文本处理] [已解决]求助批处理把txt文本每一行的最后一个“.”替换为“-歌名:” [打印本页]
作者: 盛世繁华 时间: 2023-5-6 16:36 标题: [已解决]求助批处理把txt文本每一行的最后一个“.”替换为“-歌名:”
本帖最后由 盛世繁华 于 2023-5-12 02:05 编辑
txt文本每一行中的“.”数量不定, 现在需要把每一行的最后一个“.”替换成“-歌名:”, 当其中的行没有“.”这个符号时只输出不替换
试着用emeditor进行替换没找到合适的正则表达式....求个bat方法
例如:
1.热门.万能青年旅店.《冀西南林路行》
2.谭维维.《3811》
3 Dua Lipa 《Future Nostalgia》
想替换成
1.热门.万能青年旅店-歌名:《冀西南林路行》
2.谭维维-歌名:《3811》
3 Dua Lipa 《Future Nostalgia》
谢谢
作者: chishingchan 时间: 2023-5-6 16:46
如果是一次性修改的,建议使用 EditPlus 的宏功能。
例如:
Ctrl + F 搜索一次 .《
复制字符串 -歌名:《
Ctrl + Q、回车、F3、Ctrl + V、Ctrl + Q
Alt + 1 ...
作者: 77七 时间: 2023-5-6 16:56
- @echo off
- setlocal enabledelayedexpansion
- (for /f "delims=" %%i in ('type "1.txt"') do (
- if "%%~xi" equ "" (
- echo %%i
- ) else (
- set "str=%%~xi"
- echo %%~ni-歌名:!str:~1!
- )
- ))>2.txt
- endlocal
- pause
复制代码
作者: 盛世繁华 时间: 2023-5-6 17:33
回复 3# 77七
请问为什么代码里没有“.”也能成功,如果是文本里的是逗号需要替换又应怎么处理谢谢
比如
1.热门,万能青年旅店,《冀西南林路行》
2.谭维维,《3811》
3 Dua Lipa 《Future Nostalgia》
作者: 盛世繁华 时间: 2023-5-6 17:34
回复 2# chishingchan 我思考下
作者: idwma 时间: 2023-5-6 17:51
本帖最后由 idwma 于 2023-5-6 17:53 编辑
emeditor正则应该是通用的试试这个复制代码
作者: 盛世繁华 时间: 2023-5-6 17:56
本帖最后由 盛世繁华 于 2023-5-6 18:10 编辑
回复 6# idwma 666
不知道为什么点号换成逗号不行,逗号前加转义也搜不到 (\,+)\\,
作者: idwma 时间: 2023-5-6 18:32
回复 7# 盛世繁华
逗号不用转义复制代码
作者: 盛世繁华 时间: 2023-5-12 01:59
感谢回复 8# idwma
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |