查看: 439|回复: 4
打印 上一主题 下一主题

[求助] [已解决] 文本批量替换问题

[复制链接]

该用户从未签到

123

主题

1719

回帖

3万

积分

翰林院编修

Rank: 11Rank: 11Rank: 11Rank: 11

积分
30382

灌水大神章小蜜蜂章笑傲江湖章翰林院专用章管理组专用章

跳转到指定楼层
1
发表于 2015-11-20 23:59:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
pasado en cosa juzgada
1. loc. adj. Der. pasado en autoridad de cosa juzgada.
<a class="a" href="?id=4UNmzWP#6ATTjFy" style="cursor: pointer;">pasado en autoridad de cosa juzgada.</a>
原始HTML加粗部分的跳转方式为ID#section
【问题来了:需要把ID替换为具体的词头!!!】
原始文本接近100万行, 替换的情形大约只有6万处, 经过处理, 有ID和词头对应列表

尝试了一些方法, 最终组合使用3个工具解决, 也比较有效率吧. (谁写个高效率的代码直接搞定也好)。。。
解决方法和步骤:
1. 用EmEditor正则给ID号前增加特殊标记
2. 用UltraEditor给特殊标记换行 (保证单行只会有1处ID)
3. 用UltraEditor列模式添加行号
4.① 用EmEditor正则查找并删除所有不带特殊标记的行, 排序, 删去空行
4.② 用EmEditor正则查找并删除所有带特殊标记的行, 另存备用
5. 将4①得到的结果复制到Excel里, MID函数得到ID号,VLOOKUP函数得到ID号对应的词头, SUBSTITUTE函数替换ID号为词头
6. 将得到的结果复制回4②的文本末尾, 用EmEditor排序, 删去空行, 正则删去行首序号, 用UltraEditor将之前特殊标记换行处减行返回正常文本

该用户从未签到

20

主题

222

回帖

4029

积分

贡士

Rank: 6Rank: 6

积分
4029

灌水大神章小蜜蜂章笑傲江湖章

2
发表于 2015-11-21 01:16:32 | 只看该作者
EmEditor不就有批次取代功能了嗎?

该用户从未签到

123

主题

1719

回帖

3万

积分

翰林院编修

Rank: 11Rank: 11Rank: 11Rank: 11

积分
30382

灌水大神章小蜜蜂章笑傲江湖章翰林院专用章管理组专用章

3
 楼主| 发表于 2015-11-21 04:23:49 | 只看该作者
ryuya 发表于 2015-11-21 01:16
EmEditor不就有批次取代功能了嗎?

是有啊。但是加载接近十万个LIST,然后批量替换。。。等了半天还没有结果。。。假死状态
主要是替换的LIST大,要替换的文本也大。
  • TA的每日心情
    郁闷
    2018-5-17 09:15
  • 签到天数: 1 天

    [LV.1]初来乍到

    56

    主题

    490

    回帖

    1万

    积分

    分区版主

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    12730

    翰林院专用章灌水大神章笑傲江湖章小蜜蜂章管理组专用章

    4
    发表于 2015-11-21 09:41:22 | 只看该作者
    的确很麻烦,楼主你这种方式很费时间,这种方法前提是要把文件开启后才能处理。但文件数量大这些软件都会假死,分批次一点点处理又太累人了,不知还有没有其它更好的工具不用开启文件就能批处理的。
  • TA的每日心情
    开心
    2018-7-18 00:06
  • 签到天数: 2 天

    [LV.1]初来乍到

    2

    主题

    24

    回帖

    1164

    积分

    解元

    Rank: 5Rank: 5

    积分
    1164
    5
    发表于 2015-11-29 13:20:50 | 只看该作者
    楼主好厉害,以及开始自己制作词典了