[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]批处理如何提取带指定关键词的中文短语

本帖最后由 coinken 于 2020-8-6 16:39 编辑

需求描述:
在文件夹下的若干txt文件中都包含了类似的描述:
a.txt中存在:他身穿一件素面杭绸袄子,腰间绑着一根栗色宝相花纹绅带,一头一丝不乱的头发,有着一双忧郁的桃花眼,身材高大,当真是风流倜傥文质彬彬。
b.txt中存在:他身穿一件月白色古香缎劲装,腰间绑着一根深蓝色兽纹锦带,一头飘逸的发丝,有着一双黑色的俊目,身形高大,当真是风度翩翩清新俊逸。
c.txt中存在他身穿一件深蓝色浣花锦长袍,腰间绑着一根蓝色仙花纹腰带,一头一丝不乱的头发,有着一双黝黑深邃的虎目,身材伟岸,当真是悠然自若品貌非凡。
……

如何提取文件夹下(含子目录)的所有txt文件中带指定关键词的前后各N个字组成的词并输出到新文档。
达到:
需求1:前N字+关键词,构成短语输出
需求2:关键词+后N字,构成短语输出
需求3:前N字+关键词+后N字,构成短语输出

若以“腰间帮着”为关键词,提取前后N字的内容
例1:前五个字+关键词:
结果为:
杭绸袄子,腰间绑着
香缎劲装,腰间绑着
花锦长袍,腰间绑着

例2:关键词+后四个字:
结果为:
腰间绑着一根栗色
腰间绑着一根深蓝
腰间绑着一根蓝色

例3:前7字+关键词+后6字:
结果为:
素面杭绸袄子,腰间绑着一根栗色宝相
色古香缎劲装,腰间绑着一根深蓝色兽
色浣花锦长袍,腰间绑着一根蓝色仙花

请问该如何搜索提取关键词前几个字或后几个字这种的批处理?

之前我只搜到用
@echo off
type *.txt | findstr "关键词">>out.txt
start out.txt
这种只能用来提整段句子,但我的需求只是想要关键词前后指定几个字内的描述就好。

另,如果N个字长度难以设定的话,能否设定成固定2个字或4个字长度。

望.bat高手们帮忙解答,thx~

----------------

已找到了正则的示例用其他软件解决了该问题。
.{2}(关键词).{4}
原来如此简单……

返回列表