标题: [文本处理] [待帮助]批处理提取内容并重新排列内容,谢谢您了 [打印本页]
作者: 灯塔彭于晏 时间: 2021-3-10 16:38 标题: [待帮助]批处理提取内容并重新排列内容,谢谢您了
谢谢您了先。 内容如下:
现有文本a.txt(上传到附件了),内容如下:- 你好你叫什么名字1
- 我叫彭于晏<div class="ss"></div>
- 成龙,彭于晏,#吴彦祖
- wuyanzu
-
-
- 你好你叫什么名字2
- 我叫彭于晏<div class="ss"></div>
- 成龙,#彭于晏,吴彦祖
- wuyanzu
-
-
- 你好你叫什么名字3
- 我叫彭于晏<div class="ss"></div>
- #成龙,彭于晏,吴彦祖
- wuyanzu
-
-
- 你好你叫什么名字4
- 我叫彭于晏<div class="ss"></div>
- 成龙,彭于晏,#吴彦祖
- wuyanzu
复制代码
每组内容中间有2行空格。每组内容的第3行中, 有一个词前面有#号(位置不一定的), 逗号为英文状态。
需求如下:[1]提取#号的字插入到2行与3行中间, 使之重新排列成5行(原本4行) ; [2] 并去掉文本中的# 。
效果如:- 你好你叫什么名字1
- 我叫彭于晏<div class="ss"></div>
- 吴彦祖
- 成龙,彭于晏,吴彦祖
- wuyanzu
-
-
- 你好你叫什么名字2
- 我叫彭于晏<div class="ss"></div>
- 彭于晏
- 成龙,彭于晏,吴彦祖
- wuyanzu
-
-
- 你好你叫什么名字3
- 我叫彭于晏<div class="ss"></div>
- 成龙
- 成龙,彭于晏,吴彦祖
- wuyanzu
-
-
- 你好你叫什么名字4
- 我叫彭于晏<div class="ss"></div>
- 吴彦祖
- 成龙,彭于晏,吴彦祖
- wuyanzu
复制代码
谢谢您了!
作者: qixiaobin0715 时间: 2021-3-10 21:57
本帖最后由 qixiaobin0715 于 2021-3-10 22:36 编辑
- @echo off
- (for /f "delims=" %%a in ('findstr /n ".*" a.txt') do (
- set "str=%%a"
- setlocal enabledelayedexpansion
- set "str=!str:*:=!"
- if "!str!"=="" (
- echo,
- )else if "!str:#=!"=="!str!" (
- echo,!str!
- ) else (
- for %%b in (!str!) do set "str1=%%b"&if "!str1:~0,1!"=="#" echo,!str1:~1!
- echo,!str:#=!
- )
- ))>b.txt
- pause
复制代码
作者: flashercs 时间: 2021-3-10 22:10
本帖最后由 flashercs 于 2021-3-10 22:13 编辑
- sed -E -e "s/(.*)#(\w*)(.*)/\2\n\1\2\3/" a.txt>b.txt
复制代码
论坛下载sed.exe http://bcn.bathome.net/tool/4.8/sed.exe
作者: 灯塔彭于晏 时间: 2021-3-10 22:27
回复 2# qixiaobin0715
请问输出到b.txt文本怎么改呢?
作者: qixiaobin0715 时间: 2021-3-10 22:38
回复 4# 灯塔彭于晏
已修改
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |