zoukankan      html  css  js  c++  java
  • nginx正则说明

    nginx正则说明
    
    分类: nginx2012-08-09 09:40 11714人阅读 评论(0) 收藏 举报
    nginx正则表达式firefox
     
    
    ^~     标识符后面跟一个字符串。Nginx将在这个字符串匹配后停止进行正则表达式的匹配(location指令中正则表达式的匹配的结果优先使用),如:location ^~ /images/,你希望对/images/这个目录进行一些特别的操作,如增加expires头,防盗链等,但是你又想把除了这个目录的图片外的所有图片只进行增加expires头的操作,这个操作可能会用到另外一个location,例如:location ~* .(gif|jpg|jpeg)$,这样,如果有请求/images/1.jpg,nginx如何决定去进行哪个location中的操作呢?结果取决于标识符^~,如果你这样写:location /images/,这样nginx会将1.jpg匹配到location ~* .(gif|jpg|jpeg)$这个location中,这并不是你需要的结果,而增加了^~这个标识符后,它在匹配了/images/这个字符串后就停止搜索其它带正则的location。
    =      表示精确的查找地址,如location = /它只会匹配uri为/的请求,如果请求为/index.html,将查找另外的location,而不会匹配这个,当然可以写两个location,location = /和location /,这样/index.html将匹配到后者,如果你的站点对/的请求量较大,可以使用这个方法来加快请求的响应速度。
    
    @      表示为一个location进行命名,即自定义一个location,这个location不能被外界所访问,只能用于Nginx产生的子请求,主要为error_page和try_files。
    
    ~      为区分大小写的匹配。
    ~*     不区分大小写的匹配(匹配firefox的正则同时匹配FireFox)。
    !~     不匹配的
    !~*    不匹配的
    
    .     匹配除换行符以外的任意字符
    w     匹配字母或数字或下划线或汉字
    s     匹配任意的空白符
    d     匹配数字
         匹配单词的开始或结束
    ^     匹配字符串的开始
    $     匹配字符串的结束
    
    *     重复零次或更多次
    +     重复一次或更多次
    ?     重复零次或一次
    {n}     重复n次
    {n,}     重复n次或更多次
    {n,m}     重复n到m次
    *?     重复任意次,但尽可能少重复
    +?     重复1次或更多次,但尽可能少重复
    ??     重复0次或1次,但尽可能少重复
    {n,m}?     重复n到m次,但尽可能少重复
    {n,}?     重复n次以上,但尽可能少重复
    
    W     匹配任意不是字母,数字,下划线,汉字的字符
    S     匹配任意不是空白符的字符
    D     匹配任意非数字的字符
    B     匹配不是单词开头或结束的位置
    [^x]     匹配除了x以外的任意字符
    [^aeiou]     匹配除了aeiou这几个字母以外的任意字符
    
    捕获     (exp)     匹配exp,并捕获文本到自动命名的组里
    (?<name>exp)     匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)
    (?:exp)     匹配exp,不捕获匹配的文本,也不给此分组分配组号
    零宽断言     (?=exp)     匹配exp前面的位置
    (?<=exp)     匹配exp后面的位置
    (?!exp)     匹配后面跟的不是exp的位置
    (?<!exp)     匹配前面不是exp的位置
    注释     (?#comment)     这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读
     
  • 相关阅读:
    TensorFlow(十五):使用inception-v3实现各种图像识别
    TensorFlow(十四):谷歌图像识别网络inception-v3下载与查看结构
    TensorFlow(十三):模型的保存与载入
    TensorFlow(十二):使用RNN实现手写数字识别
    TensorFlow(十一):递归神经网络(RNN与LSTM)
    TensorFlow(十):卷积神经网络实现手写数字识别以及可视化
    ffmpeg-20160628-git-bin.7z
    ffmpeg-20160617-git-bin.7z ffmpeg-20160626-git-bin.7z
    欧洲杯 2016 高清直播
    YY 神曲 李明霖 14部合集
  • 原文地址:https://www.cnblogs.com/archoncap/p/4962601.html
Copyright © 2011-2022 走看看