文章目录
  1. 1. 在正则表达式里想要匹配多行:
  2. 2. 想要匹配到到一定区域内的内容可以考虑非贪婪匹配:
  • 简单描述下贪婪匹配和非贪婪匹配:
    1. 1. 例如:针对字符串“LeeeeLeeeeL”
  • 在正则表达式里想要匹配多行:

    ([\s\S]*)

    想要匹配到到一定区域内的内容可以考虑非贪婪匹配:

    例如想要匹配 “<object name=’暗黑3’ size=’12’></object>” 中的name值“暗黑3

    要使用表达式“<object name=’(.+?)’” (非贪婪匹配)
    而不能使用“<object name=’(.+)’” (贪婪匹配)。因为这个表达式会匹配出这样的结果“暗黑3’ size=’12”,这并不是我们想要的。


    简单描述下贪婪匹配和非贪婪匹配:

    例如:针对字符串“LeeeeLeeeeL

    贪婪模式:

    (L)(\w+) “\w+” 将匹配第一个”L”之后的所有字符。结果:”eeeeLeeeeL”
    (L)(\w+)(L) “\w+” 将匹配第一个”L”和最后一个”L”之间的所有字符。结果:”eeeeLeeee”

    非贪婪模式:

    (L)(\w+?) “\w+?” 将尽可能少的匹配第一个”L”之后的字符。结果:”e”
    (L)(\w+?)(L) “\w+?” 将匹配以第一个”L”开头以第二个”L”结尾的字符。结果:”eee”

    文章目录
    1. 1. 在正则表达式里想要匹配多行:
    2. 2. 想要匹配到到一定区域内的内容可以考虑非贪婪匹配:
  • 简单描述下贪婪匹配和非贪婪匹配:
    1. 1. 例如:针对字符串“LeeeeLeeeeL”