今日,友人问我现有作文模板如下,怎样可以优雅地录入文本:
首先吐槽一下设计模板的人,既然是作文模板,为何要用Excel,而不直接用Word的稿纸设置(详见用word怎么制作作文稿纸)?
好吧,既然现在不得不用这个Excel模板,最大的问题是连续打字只会录入到一个单元格内,如果要想一个格子一个字,必须打一个字,定位到下一个单元格,再打一个字,再定位到下一个单元格……(又想吐槽这个模板设计人了,绝对的只管起飞,不管降落)
现在的目标是: 一气呵成录完文稿,然后经过简单数步,正确地套用模板
1. 解决思路
该Excel模板每行17格,每2行之间有一空行。因为 Excel 会将以 Tab
分割的文本自动分列,所以将文本利用 正则表达式 处理,使其每行17个字,字与字之间用 Tab
隔开,并且每2行之间有一空行即可。
<!– more –>
2. 所需工具
- 支持正则表达式的软件,例如 Emeditor
- Excel
3. 操作步骤
录入文稿
建议直接在文本编辑器中录入,即可排除不必要的干扰,又可保证后续操作的正确度。因为录入格式直接关乎最终结果,有几处需重点注意:
- 一个自然段一行,段首空格直接录入两个空格
- 省略号应录入标准的
……
而非6个英文句号......
- 保存文稿副本
- 正则处理
- 替换多个数字
- 查找:
(\d|\.){2,}
- 替换为:
#
- 查找:
- 将文本处理为一行17个字的格式
- 查找:
^(.{17})(.)
- 替换为:
\1\n\n\2
- 查找:
- 字与字之间用
Tab
隔开- 查找:
.
- 替换为:
\0\t
- 查找:
- 手动修正换行,保证每行之间都有1行空行(可能在自然段首缺失空行)
- 替换多个数字
- 全选正则处理后的文本,复制粘贴到Excel模版中
- 对照文稿副本,替换
#
为原始数字。
4. 更新历史
- 拟定初稿
Date: 2016-03-17 四 00:00