Board logo

标题: [文本处理] [已解决]批处理如何将一个文本中的指定字符串逐个随机替换成另一个文本中的某一行 [打印本页]

作者: 920168    时间: 2011-12-20 21:29     标题: [已解决]批处理如何将一个文本中的指定字符串逐个随机替换成另一个文本中的某一行

本帖最后由 pcl_test 于 2016-8-9 10:12 编辑

批处理如何随机获取文本某行,对指定字符进行逐行替换?
a.txt (可能包含特特殊字符,内容很多,仅举例)
  1. 可能包含特特殊字符《三国志》不仅是一部史学巨著,更是一部文学巨著。
  2. 陈寿在尊重史实的基础上,以简练、优美的语言为我们绘制了一幅幅三国人物肖像图。
  3. 人物塑造得非常生动,可读性极高。《三国志》取材精审,作者对史实经过认真的考订,慎重的选择,
  4. 对于不可靠的资料进行了严格的审核,不妄加评论和编写,
  5. 慎重的选择取材之源。这虽然使
  6. 内容简介《三国志》不仅是一部史学巨著,更是一部文学巨著。
  7. 陈寿在尊重史实的基础上,
  8. 以简练、优美的语言为我们绘制了一幅幅三国人物肖像图。人物塑造得非常生动,
  9. 可读性极高。《三国志》取材精审,作者对史实经过认真的考订,慎重的选择,对于不可靠的资料进行了严格的审核,不妄加评论和编写,慎重的选择取材之源。
  10. 这虽然使《三国志》拥有了文辞简约的特点,但也造成了史料不足的缺点。
复制代码
b.txt
  1. 《三国志—001》
  2. 《三国志—002》
  3. 《三国志—003》
  4. 《三国志—004》
  5. 《三国志—005》
  6. 《三国志—006》
  7. 《三国志—007》
复制代码
需要达到的要求:替换“《三国志》”为如下:
  1. 可能包含特特殊字符《三国志—002》不仅是一部史学巨著,更是一部文学巨著。
  2. 陈寿在尊重史实的基础上,以简练、优美的语言为我们绘制了一幅幅三国人物肖像图。
  3. 人物塑造得非常生动,可读性极高。《三国志—001》取材精审,作者对史实经过认真的考订,慎重的选择,
  4. 对于不可靠的资料进行了严格的审核,不妄加评论和编写,
  5. 慎重的选择取材之源。这虽然使
  6. 内容简介《三国志—004》不仅是一部史学巨著,更是一部文学巨著。
  7. 陈寿在尊重史实的基础上,
  8. 以简练、优美的语言为我们绘制了一幅幅三国人物肖像图。人物塑造得非常生动,
  9. 可读性极高。《三国志—002》取材精审,作者对史实经过认真的考订,慎重的选择,对于不可靠的资料进行了严格的审核,不妄加评论和编写,慎重的选择取材之源。
  10. 这虽然使《三国志—006》拥有了文辞简约的特点,但也造成了史料不足的缺点。
复制代码

作者: HAT    时间: 2011-12-20 22:59

那些在各个论坛到处发广告的人也是像你这样干的吧?
作者: 920168    时间: 2011-12-21 11:16

本帖最后由 920168 于 2011-12-21 11:21 编辑

回复 2# HAT


    你说那些SEO?我不是做那个的!我是看到这个贴
http://www.bathome.net/thread-14536-1-1.html
引思的
作者: 920168    时间: 2011-12-21 21:25

怎么没人帮忙????
作者: weichenxiehou    时间: 2011-12-21 22:38

  1. @echo off&setlocal enabledelayedexpansion
  2. set "replace=《三国志》"
  3. for /f "delims=" %%a in (b.txt) do set/a n+=1&set "#!n!=%%a"
  4. for /f "delims=" %%a in (a.txt) do (
  5.   set/a m=!random!%%n+1
  6.   for %%i in (!m!) do set "x=!#%%i!"
  7.   for %%i in (!x!) do set "str=%%a"&set "str=!str:%replace%=%%i!"
  8.   echo,!str!
  9. )
复制代码

作者: cjiabing    时间: 2011-12-21 22:57

如果是做广告的最好去找那些赚钱的大侠去,这里不是助纣为虐的地方。
不用选择哪行了吧?直接全部替换算了,手工业可以操作。
作者: weichenxiehou    时间: 2011-12-21 23:11

大家可能言重了,个人感觉此贴应该不是广告帖,《三国志》有什么好打广告的?不知利益从何而来……经验判断,打广告的人不会反复查看原贴的,往往是散弹射击法,打完就走,绝不回头,哈哈。
作者: 920168    时间: 2011-12-22 12:52

回复 6# cjiabing


    版主误会了,如果AD(广告) ,伪原创的软件一搜一大把,自动关联TAG,高亮关键词什么 的!
作者: cjiabing    时间: 2011-12-22 18:43

回复 8# 920168


    呵呵,大家误会了,我接前面的说假如,不是说他。
作者: pcl_test    时间: 2016-8-9 10:32

本帖最后由 pcl_test 于 2016-8-9 10:33 编辑
  1. //&cls&cscript -nologo -e:jscript "%~f0" "a.txt" "b.txt"&pause&exit
  2. var fso = new ActiveXObject('Scripting.Filesystemobject');
  3. var text = fso.OpenTextFile(WSH.Arguments(1), 1).ReadAll().split(/\r?\n/);
  4. WSH.Echo(fso.OpenTextFile(WSH.Arguments(0), 1).ReadAll().replace(/《三国志》/g, function(){return text.sort(function(){return Math.random()-.5})[0]}));
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2