我收到了一篇用纯文本编辑器编写的论文,我需要将其重新格式化为质量合适的文档。原始文档使用大写字母来强调句子中的特定元素(一个或多个连续的单词)。我想将所有这些部分都改为小写斜体。如果不找到每个特定片段、选择它并手动完成这项工作,怎么可能实现这一点呢?
经过一番谷歌搜索,我发现了许多基于正则表达式的方法来查找所有大写单词,但没有一个有效。有些方法让我选择了以大写字母开头的单词的小写部分,有些则根本不起作用。
经过一些实验,我发现迄今为止最好的工具是
[:upper:]{3,}
它会找到所有长度超过 3 个字母的大写单词,这样我至少不必依靠眼睛去寻找它们。但它仍然只能找到单词,我最终还是会选择连续的短语并手动设置它们的格式。
答案1
使用https://extensions.libreoffice.org/extensions/alternative-dialog-find-replace-for-writer
首先定义一个名为“斜体”的字符样式。然后使用Edit > Alt. Find & Replace以下参数:
搜索:[:upper:]{3,}
替换:\A{CharStyleName=italic}&
[X] 匹配大小写
[X] 正则表达式