Nginx if语句加正则表达式实现字符串截断
在给大家讲述这个问题之前,先给大家看一段nginx配置.我们用到了set-misc-nginx-module
location/test/{
default_typetext/html;
set_md5$hash"secret"$remote_addr;
echo$hash;
}
这样输出来的内容,可能是下面这样的
202cb962ac59075b964b07152d234b70
但如果我们要截取某几位字符怎么办呢?
首先大家想到的肯定是使用模块来实现,但只能这样吗?有没有更方便的方式呢?
有的.
我们可以巧妙地使用if+正则表达式来实现这个小需求:
location/test/{
default_typetext/html;
set_md5$hash"secret"$remote_addr;
if($hash~^[\w][\w][\w][\w][\w][\w][\w][\w]([\w][\w][\w][\w][\w][\w][\w][\w])){
set$hash$1;
}
echo$hash;
}
访问/test/输出的就是:
ac59075b
热门推荐
10 喜得孙子祝福语简短唯美
11 婚礼祝福语简短朴实大众
12 员工周年祝福语大全简短
13 家长回复节日祝福语简短
14 简短生日祝福语老同学
15 夜雨祝福语简短10字
16 蛋糕祝福语简短闺蜜
17 部门过年祝福语简短独特
18 简短精炼的结婚祝福语