📄 00000003.htm
字号:
Regexp 的取代。 <BR> <BR> <BR> <BR> o ESC-x query-replace RET string RET newstring RET <BR> 使用 query replace 的方法及步骤与 <BR> unconditional replace的方法雷同,不同处只在於所引用的 <BR> 指令有异,以及多增了询问的选择。其详细步骤如下 <BR> (斜体字表示使用者所输入的资料,粗体字表示系统自行根据 <BR> 输入资料的回应): <BR> <BR> <BR> <BR> 1. ESC-x query-replace RET <BR> <BR> 2. Query replace: Regexp RET <BR> <BR> 3. Query replace Regexp with: newstring RET <BR> <BR> 4. Query replacing Regexp with newstring:(? for help) <BR> 此步骤是 query replace 与 unconditional replace <BR> 最大不同之处。因为所有徵询的工作都是从此展开。 <BR> 不知如何使用徵询的使用者可键入 ``?'' 来得到线上的求助。 <BR> 以下就是键入 ``?'' 系统给予的资讯。 <BR> <BR> Query replacing Regexp with string. <BR> <BR> Type Space or `y' to replace one match, Delete or `n' to skip to next, <BR> <BR> RET or `q' to exit, Period to replace one match and exit, <BR> <BR> Comma to replace but not move point immediately, <BR> <BR> C-r to enter recursive edit (M-C-c to get out again), <BR> <BR> C-w to delete match and recursive edit, <BR> <BR> C-l to clear the screen, redisplay, and offer same replacement again, <BR> <BR> ! to replace all remaining matches with no more questions, <BR> <BR> ^ to move point back to previous match. <BR> <BR> 使用 query replace 时可有多种选择项。现只介绍常用的几个选项: <BR> <BR> <BR> <BR> 1. Space 或 y <BR> 当决定以新的字串取代原来的字串时,以 Space 或 y 来表示。 <BR> 执行 query replace 时,游标会移至下一个合适的字串处, <BR> 此时若决定将其取代,则键入 ``Space'' 或 ``y''。当取代完成後, <BR> 游标会自动移至下一个合适的字串处。当然也可以放弃所找到 <BR> 的字串,这就是下一个要讨论的选项了。 <BR> <BR> 2. Delete 或 n <BR> 放弃字串的取代,使游标移至下一个目的地,是 Delete 或n <BR> 所做的事情。 <BR> <BR> 3. .(Period) <BR> 若已找到合适的字串,而想终止所有进一步的取代行为时, <BR> 键入``.''可使目前游标所在处的字串以新的字串取代,并且 <BR> 在取代後立即离开query replace 的状态。 <BR> <BR> 4. ! <BR> `` !'' 可使 query replace 恢复为unconditional replace。 <BR> 因此,若想放弃询问的权利而恢复 unconditional replace 的 <BR> 状态,键入 ``!'' 就可将游标所位置及其以後所有合适的字串, <BR> 都以新字串取而代之。 <BR> <BR> 5. RET 或 `` q'' <BR> 若想就此离开 query-replace 而不再做进一步的取代动作, <BR> 只需按下RET 或 ``q'' 即可。 <BR> <BR> <BR> <BR> <BR> <BR> o ESC-x query-replace-Regexp RET Regexp RET newstring RET <BR> 此方法与 `` ESC-x query-replace RET string RET newstring RET'' <BR> 相似,但此时所取代的不是特定的字串,而是某一字串的巨集。 <BR> <BR> <BR>字串大小写( case sensitive)的问题与取代也有很大 <BR>的相关性。因为大小写的问题,对於 unconditional replace 与 <BR> query replace 均适用。所以,只举 query-replace <BR>为例说明,至於 unconditional replace 就如法泡制。 <BR>当启动 `` ESC-x query-replace RET string RET newstring RET'' <BR>时, string 与 newstring 的大小写,关系不同字串的取代。 <BR>其规则如下所述: <BR> <BR> * 当 string 与 newstring 都以小写的形式出现时, <BR> 取代工作的进行,就有三种情形: <BR> <BR> <BR> <BR> o 缓冲区原始字串的第一个字母是以小写为开端时,不论 <BR> 此字串是否有其它的大写字母,经取代後全转换成小写。 <BR> <BR> o 若原始字串的每个字母都是大写时,经取代後也维持大写的形式。 <BR> <BR> o 若原始字串以大写为开端,不论此字串是否还有其它的字母 <BR> 为大写,只要不是全为大写的情形,取代後只有字串的第一个 <BR> 字母为大写,其馀一律为小写。 <BR> <BR> <BR> 以下举一实例,供参考: <BR> string :abc , newstring: xyz <BR> 原始文件为: abc Abc aBc abC ABc AbC aBC ABC <BR> 经过取代为: xyz Xyz xyz xyz Xyz Xyz xyz XYZ <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -