
书:pan.baidu.com/s/1fJBrhrA9R2vswAS_4de6Cg?pwd=uind
- 正则表达式的定义:
- 正则表达式是一种特殊的字符串模式,用于匹配一组字符串。
- 正则表达式的起源:
- 正则表达式最早出现于20世纪40年代,当时用来描述正则语言,而到20世纪70年代才真正出现在程序设计领域。
- 正则表达式的应用:
- 正则表达式后来成为ed、sed和vi(vim)编辑器、grep、AWK等Unix操作系统衍生出的工具集中重要的组成部分。
- 字符组的匹配:
- 字符组(character class)是一个或多个字符组成的集合,用于匹配其中的任何一个字符。例如,[abc]可以匹配a、b或c。
- 量词的使用:
- 量词(quantifier)用于指定前面的字符或字符组出现的次数。例如,*表示前面的字符或字符组可以出现零次或多次,+表示至少出现一次,?表示出现零次或一次。
- 捕获分组和后向引用:
- 捕获分组(capturing group)使用圆括号将一部分正则表达式括起来,以便后续引用。后向引用(backreference)则用于引用之前捕获的分组内容。
- 选择操作:
- 使用竖线(|)表示选择操作,可以匹配竖线前后的任意一个表达式。例如,a|b可以匹配a或b。
- 非捕获分组:
- 非捕获分组(non-capturing group)使用(?:…)语法,不会保存匹配的内容供后续引用。
- 匹配任意字符:
- 使用点号(.)可以匹配除换行符以外的任意单个字符。
- 匹配空白符:
- 使用\s可以匹配空白符,包括空格、制表符、换行符等。
- 边界匹配:
- 可以使用^匹配字符串的起始位置,$匹配字符串的结束位置。
- 正则表达式的高级用法:
- 正则表达式还支持环视(lookaround)、断言(assertion)等高级用法,可以实现更复杂的匹配需求。
这些原文摘录涵盖了《学习正则表达式》中关于正则表达式的基本概念、匹配原理、常用语法以及高级用法等方面的内容。通过学习这些内容,读者可以逐步掌握正则表达式的使用技巧,并在实际编程和文本处理中灵活应用。