查找&替换
—在代码视图中搜索—
查找和更新文本是Sigil中最常见的任务之一——查找单词,删除或替换不需要的文本,或者更改格式。事实上,如果你需要对你的文本进行大量的修改,你几乎肯定会想使用查找和替换(及其相关的保存搜索功能),因为它允许你快速地对所有文件进行大量的编辑。
要打开查找&替换对话框,请选择菜单项、其键盘快捷键或工具栏按钮查找&替换图标。
打开时,“查找和替换”对话框总是位于编辑窗口的底部,以便于访问。在“查找和替换”对话框中,单击显示使用v形符号。在左下角显示或隐藏选项。
所有查找和替换操作都有快捷键,例如Ctrl+F查找和Ctrl+G再次查找(在Mac上使用Cmd而不是Ctrl)。请查看菜单以获取快捷方式列表。
操作按钮
右边的按钮用于运行搜索命令:查找、替换、替换/查找、全部替换和全部计数。
查找
查找搜索词的下一个匹配项,并在“代码”视图中突出显示。
要查找文本:
- 在“查找”框中输入要查找的文本。
- 单击查找在“代码视图”窗口中搜索并突出显示下一个匹配项。
如果只是进行查找,替换框中的任何文本都会被忽略。
如果您在“代码”视图中选择文本,然后使用Ctrl+F(在Mac上:Cmd+F)打开“查找&替换”窗口,Sigil会自动将您选择的文本放入“查找”框中。
运行搜索后,您在“查找”或“替换”框中输入的文本会自动保存到历史记录列表中,供以后使用。单击查找或替换文本框右侧的向下箭头,查看搜索历史列表的下拉菜单。
状态消息出现在右下角。
替换
替换“查找”匹配的文本的一个匹配项。
要替换文本:
- 在“查找”框中输入要查找的文本。
- 在“替换”框中输入要替换的文本。
- 单击查找以搜索并突出显示下一个匹配项。
- 单击替换进行替换。
要撤消更改,请使用Ctrl+Z(在Mac上:Cmd+Z)或显示撤消图标的撤消按钮。或者在“代码视图”窗口中右击并选择将文本改回原样。但是,如果您在多个文件中进行替换,而下一个匹配项在不同的文件中,则需要切换回包含被替换文本的文件,然后再选择“撤消”。
替换/查找
替换下一个匹配项的一次出现,然后自动查找并突出显示后续匹配项。
第一次执行替换/查找时,第一个匹配项将突出显示,但不会被替换。随后使用替换/查找将替换突出显示的匹配文本,然后自动查找下一个匹配。
要替换文本,然后自动查找下一个匹配项:
- 在“查找”框中输入要查找的文本。
- 在“替换”框中输入要替换的文本。
- 单击替换/查找以搜索并突出显示第一个匹配项。
- 单击替换/查找替换匹配项,然后自动查找并高亮显示下一个匹配项。
如果没有选择文本,您可以安全地使用替换/查找代替查找,因为在突出显示匹配项之前,它的作用就像查找一样。
全部替换
根据您的设置,将搜索词匹配的所有文本替换为替换词。这是自动完成的。
您不能撤消全部替换——请先保存!或者创建一个检查点
要全部替换:
- 在“查找”框中输入要查找的文本。
- 在“替换”框中输入要替换的文本。
- 单击全部替换,一次性替换所有匹配项。
全部替换始终从文件开头开始替换。
为避免出现令人不快的意外,请使用“全部计数”测试查找和替换字符串,以查看匹配项数是否在预期范围内。在使用“全部替换”之前,您还可以使用简单的“替换”进行几次测试。
在“全部替换”之前保存您的图书或创建检查点,然后检查它是否有问题。
在执行全部替换之前,请检查您的模式是设置为当前文件还是所有HTML文件。
计数所有
统计在“查找”文本框中输入的搜索词在选定文件中出现的次数,然后在“查找/替换”窗口的右下角显示结果。“全部计数”使用所有模式设置,包括“向上/向下”和“换行”选项。
如果没有看到计数所有按钮,请在“查找和替换”窗口的左下角,单击V形图标既可显示“计数所有”按钮。或使用其键盘快捷键。
要计算选定文件中的所有匹配项:
在执行全部替换之前,最好使用计数所有来确认替换的数量符合您的预期。您还应该在全部替换后运行它,以防特定的搜索和替换创建了新的匹配。
搜索模式
Sigil提供了三个包含不同搜索模式的下拉菜单,让您可以更好地控制搜索。
搜索内容
正常:精确搜索您在“查找”框中键入的内容,但忽略大小写,例如“A”和“a”将被视为同一个字母。
区分大小写:搜索您在“查找”框中键入的内容,例如“A”和“a”将被视为不同的字母。
正则表达式:正则表达式模式允许您搜索字符串匹配模式,而不是精确的单词或字符。正则表达式非常强大,也是使用Sigil处理电子书的主要手段之一。例如,您可以搜索“Page [0-9]+”,这将找到后面跟着一个或多个数字的“Page”。
有关使用正则表达式的更多细节,请参阅正则表达式一章。
在哪里搜索
当前文件:仅在“代码视图”窗口中显示的文件中搜索。您可以搜索所有文件类型,包括HTML,XHTML,CSS,OPF,NCX。
如果搜索到达文件末尾并且“循环匹配”处于打开状态,则它将自动循环并从文件的另一端进行搜索。屏幕上将闪烁一个小箭头图片,以指示搜索已结束。
要临时仅在当前文件上运行搜索,请按住Ctrl键(在Mac上为Cmd键),同时单击动作按钮。如果要在所有HTML文件上都设置了模式的情况下搜索样式表,这将非常有用。
所有HTML文件:在每个HTML/XHTML文件中搜索,但不要在其他文件类型中搜索,例如CSS、OPF或 NCX。
当搜索到达文件的结尾或开头时,它会自动移到下一个或上一个文件(按图书浏览器中列出的顺序)。如果勾选了循环匹配,它将循环运行,直到搜索完所有文件。
被选中的HTML文件:仅搜索在图书浏览器中选择的HTML文件。
当搜索到达文件的结尾或开头时,它会自动移到下一个或上一个选定的文件(按图书浏览器中列出的顺序)。如果勾选了循环匹配,它会一直循环,直到搜索完所有选定的文件。
选项卡中的HTML文件:仅搜索在选项卡管理器中作为选项卡打开的HTML文件。
当搜索到达文件的末尾或开头时,它将自动移动到下一个或上一个选定的文件(按在选项卡管理器中打开的顺序)。如果循环匹配处于打开状态,它将循环运行,直到搜索完所有选定的文件。
所有CSS文件:在每个CSS文件中搜索——但不要在其他文件类型中搜索,如HTML、OPF或NCX。
当搜索到达文件的结尾或开头时,它会自动移到下一个或上一个文件(按图书浏览器中列出的顺序)。如果勾选了循环匹配,它将循环运行,直到搜索完所有文件。
选定的CSS文件:仅搜索在图书浏览器中选择的CSS文件。
当搜索到达文件的结尾或开头时,它会自动移到下一个或上一个选定的文件(按图书浏览器中列出的顺序)。如果勾选了循环匹配,它会一直循环,直到搜索完所有选定的文件。
选项卡中的CSS文件:仅搜索在选项卡管理器中作为选项卡打开的CSS文件。
当搜索到达文件的结尾或开头时,它会自动移动到下一个或上一个选定的文件(按照在标签管理器中打开的顺序)。如果勾选了循环匹配,它会一直循环,直到搜索完所有选定的文件。
OPF文件:仅搜索OPF文件。
在OPF文件中使用替换时必须特别小心,因为它实际上是epub的核心,并且几乎控制着所有内容。检查点或首先保存文件的重要性怎么强调都不为过。
NCX文件:仅搜索EPUB2和EPUB3中的NCX文件(如果存在)
标记文本:这是一个特殊选项,仅在标记文本时显示。若要将搜索限制为部分文本,请先在“代码视图”中选择一些文本,然后转到菜单项,或使用右键单击上下文菜单。
如果不进行选择,则可以通过再次使用菜单项来取消标记文本。如果使用“撤消”、键入任何文本或更改选项卡,文本也将被取消标记。如果仅使用“替换”或“全部替换”,则标记的文本将保持标记状态,但会根据您的替换内容进行修订。
搜索方向
搜索选项
使用正则表达式模式时,选项菜单提供了有用的开关,以及一个控制循环匹配是打开还是关闭的复选框。
如果选项处于隐藏状态,请单击V形向上图标。你在左下角可以看到它们。
单击V形向下图标。可以隐藏选项。
搜索选项包括:
单行模式:此正则表达式选项前置(?s)应用于所有正则表达式搜索,并在您需要时使用.*匹配任何字符,甚至跨行。
懒惰匹配:此正则表达式选项前置(?u)应用于所有正则表达式搜索,当您希望一个模式匹配最短的匹配而不是最长的匹配时使用。
自动标记:在选定的文本上使用Ctrl-F(在Mac上为Cmd-F)将其复制到查找框中时,这将把空格转换为\s并对某些字符进行转义,以便它们适用于正则表达式。
循环匹配:在“当前文件”模式下启用时,如果搜索到达文件末尾,它将自动环绕到文件的开头以继续搜索(如果是向上搜索,则相反)。禁用后,搜索将在文件末尾停止(如果向上搜索,则停止在开头)。
在“所有的HTML文件”模式下启用后,如果搜索到达最后一个HTML文件(按“图书浏览器”中列出的顺序),它将自动切换到第一个HTML文件以继续搜索(如果是向上搜索,则为相反)。禁用后,搜索将停止在图书中的最后一个文件(如果是向上搜索,则停止在第一个文件)。
上下文菜单
如果右键单击“查找”或“替换”框,它将打开一个上下文菜单,其中包含以下选项: