zoukankan      html  css  js  c++  java
  • 正则表达式学习笔记

    1. 特殊字符
    对于文字字符,有11个字符被保留作特殊用途。他们是
    [ ] \ ^ $ . | ? * + ( )
    如果想在正则表达式中将这些字符用作文本字符,需要用反斜杠“\”对其进行换码

    2.正则表达式有两种类型的引擎:文本导向和正则导向
    ·正则导向的引擎总是返回最左边的匹配

    3.字符集是由一对方括号“[]”括起来的字符集合

    4.取反字符集
    在左方括号“[”后面紧跟一个尖括号“^”,将会对字符集取反。结果是字符集将匹配任何不在方括号中的字符。

    5.字符集的简写
    <<\d>>代表<<[0-9]>>
    <<\w>>代表单词字符
    <<\s>>代表“白字符”(即空格回车)
    取反字符集的简写
    <<[\S]>> = <<[^\s]>>
    <<[\W]>> = <<[^\w]>>
    <<[\D]>> = <<[^\d]>>

    6.使用?*或+ 进行重复
    ?:告诉引擎匹配前导字符0次或一次。事实上是表示前导字符是可选的。
    +:告诉引擎匹配前导字符1次或多次
    *:告诉引擎匹配前导字符0次或多次

    7.限制性重复
    许多现代的正则表达式实现,都允许你定义对一个字符重复多少次。词法是:{min,max}。min和max都是非负整数。如果逗号有而max被忽略了,则max没有限制。如果逗号和max都被忽略了,则重复min次。

    8.使用“.”匹配几乎任意字符

    9.字符串开始和结束的锚定
    锚定和一般的正则表达式符号不同,它不匹配任何字符。相反,他们匹配的是字符之前或之后的位置。“^”匹配一行字符串第一个字符前的位置。< <^a>>将会匹配字符串“abc”中的a。<<^b>>将不会匹配“abc”中的任何字符。
    类似的,$匹配字符串中最后一个字符的后面的位置。所以<<c$>>匹配“abc”中的c。

    ·使用“^”和“$”作为行的开始和结束锚定

    · 绝对锚定
    <<\A>>只匹配整个字符串的开始位置,<<\Z>>只匹配整个字符串的结束位置。即使你使用了“多行模式”,<<\A>>和<<\Z>>也从不匹配新行符。
    详细内容地址http://www.blueidea.com/tech/program/2006/3443.asp

  • 相关阅读:
    Java 9 揭秘(9. 打破模块封装)
    Java 9 揭秘(8. JDK 9重大改变)
    好书分享 ——《深度工作》
    Java 9 揭秘(7. 创建自定义运行时映像)
    Java 9 揭秘(6. 封装模块)
    如何更好地管理你的精力,时间和专注力实现最佳表现
    这是您一直期待的所有iOS 11功能的屏幕截图
    我为什么不敢也不想写自己的经验和想法?
    无聊? 现在你知道为什么了!
    Java 9 揭秘(5. 实现服务)
  • 原文地址:https://www.cnblogs.com/kaka8384/p/1131531.html
Copyright © 2011-2022 走看看