笔记_学习正则表达式书评-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 编程 > 学习正则表达式 > 笔记
cobie 学习正则表达式 的书评 发表时间:2014-10-24 23:10:28

笔记

# 学习正则表达式

> 摘自《学习正则表达式》 kindle版

1. 正则表达式最早出现于美国数学家斯蒂芬·克莱尼编写的Introduction to Metamathematics一书中(1952年Van Nostrand公司出版)。

2. `egrep`使用了扩展的正则表达式(ERE)并引入了更多的元字符,比如|、+、?、(、)。`fgrep`(grep-F)使用字符串字面值来查找文件;像$、*、|这样的元字符则没有特殊含义。

3. `grep -o 'PATTERN' | wc -l` 和`grep -c 'PATTERN'`的不同在于, `-o`选项表示只显示一行中与指定模式匹配的部分,每次出现都会作为单独的一行。 `-c`给出的是匹配的行的数目,但是一行中可能有多个单词匹配。

4. `(? )` 由于不存储内容,非捕获分组就会带来较高的性能

5. 另一种非捕获分组是原子分组(atomic group)。如果你使用的正则表达式引擎进行回溯操作,这种分组就可以将回溯操作关闭,但它只针对原子分组内的部分,而不针对整个正则表达式。

6. POSIX(Portable Operating System Interface,可移植操作系统接口)是IEEE维护的一系列标准。其中包含了一个正则表达式标准(ISO/IEC/IEEE 9945:2009),该标准提供了一套命名的字符组,其形式为:`[[:xxxx:]`

7. 环视是一种非捕获分组,它根据某个模式之前或之后的内容匹配其他模式。环视也称为零宽度断言。

8. ack也可以使用环视功能,这是因为它是由Perl语言编写的。ack的命令行界面与grep十分相似。 试一下这个命令: `ack '(?i)ancyent (?=ma)' rime.txt`

9. BRE要求对字符转义后才可作为元字符使用,例如括号({和})。ERE,在基本正则表达式BRE的基础上添加了额外的功能。

10. 果蝠的视力是所有蝙蝠中最好的。许多蝙蝠依靠回声避开障碍物,果蝠凭借视力以及出色的嗅觉来定位食物和进行导航[^1]。

[^1]: wikipedia:翼手目可以分为两个亚目:大蝙蝠亚目和小蝙蝠亚目,又被称为食果蝠和食虫蝠。大蝙蝠亚目的蝙蝠视力好,眼睛大,主要依靠视觉来辨别物体;小蝙蝠亚目的成员通常视力退化,眼睛小,主要依靠回声来辨别物体。

展开全文


推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读