📄 00000001.htm
字号:
<HTML><HEAD> <TITLE>BBS水木清华站∶精华区</TITLE></HEAD><BODY><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER> <BR>Why Regular Expression <BR> <BR>Regular Expression 是一种字串表达的方式. 使用者可使用 一个简短的 Regular <BR>Expression 来表示 "具有某特徵″ 或者 "复杂难以描述″的所有字串. 而日常资料 <BR>处理中, 最常进行的工 作是『从档案中找出具有某特徵的字串, 再加以处理(列印,置 <BR>换, 计算...)』. 此时, Regular Expression 便可派上用场. 使用一 个简短的 <BR>Regular Expression 便可完全指定需要加以处理的资料 , 避免反覆判断找寻的困扰. <BR>譬如 : <BR> <BR>若使用 MS-DOS 中文字编辑器 edit 的找寻功能, 可来 找出档案中所有的 <BR>``prg1.c''; 但 edit 却无法一次同 时找寻字串``prg1.c''、``prg2.c'' ... 或 <BR>``prg8.c''; 必需 反覆执行八次找寻的动作. <BR> <BR>可是在 UNIX 中的 vi , 使用一个 Regular Expression `` prg[0-8]\.c'' 便可同时 <BR>表示上述八个字串, 如此一次就可找出指定的所有字串. <BR> <BR>可见 Regular Expression 确实十分便利. 然而, MS-DOS 下许多 工具的设计并不支援 <BR>解读 Regular Expression. 但 UNIX 环境下除 了 vi 外, 还有许多工具都接受 <BR>Regular Expression, 如 : grep、sed、awk、csplit... . 使用这些工具时, 便可应 <BR>用 Regular Expression 来指定欲找寻的字串; 并可配合这些工具的 其它功能将找寻 <BR>到的资料进一步地加以处理. <BR> <BR>Regular Expression 的特色是简短且表达力强. 它所表达的可以 是某一特定的字串, <BR>也可以是具有某一共同特徵的"所有"字串(如上 例). Regular Expression 中定义了一 <BR>组特殊字元, 它们代表著某些 特别的意义; 使用者可藉这些特殊字元来表示字串的下 <BR>列特徵 : <BR> <BR> 1. 描述组成字串的元素(components) : 例 如 : Regular Expression ``[Tt]he'' <BR> 代表字串 ``The'' 或 ``the''. <BR> 2. 限制字串出现的位置 : 例 如 : Regular Expression ``^The'' 代表『出现於行 <BR> 首』的字串 ``The''. <BR> <BR>由於 Regular Expression 具有极佳的字串表示能力. 往後, 读者若 能多利用 UNIX <BR>上接受 Regular Expression 的工具, 且灵活应用 Regular Expression; 则可避免撰 <BR>写程式进行复杂字串判断(parsing) 的麻烦. 如此, 才能真正发挥各工具的的功能, 减 <BR>轻资料处理时的负 担, 并增加资料处理的效率. <BR> <BR>---------------------------------------------------------------------------- <BR> <BR>Note 1 <BR> UNIX中定义了数种字串表达方式, Regular Expression 及 Extended Regular <BR> Expression 是常见的二种. 另一种是使用於Shell命令列, 将 参数展 <BR> 开}(expand)成档案名称的"Pattern Matching Notation", 这种 表示法与 <BR> Regular Expressions 的语法差异较大, 甚至有数项用法相左, 故位未列入本文 <BR> 讨论以免读者混淆. <BR> <BR><CENTER><H1>BBS水木清华站∶精华区</H1></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -