lNTERP-OLO

   前天做了陈皓的趣味竞赛題目()一直卡在第四道题目回文猫处不知所以然,看了微博上的提示知道需要用正则表达式,但是不确定使用表达式的模式和原文下面是第四道题的截图和,不看解析你可以想到通关的办法吗?

    看了答案才知道source藏在网页的html源码中,曾经有过去看源码的念头想作者不会这么geek吧,结果。就在源码中,下面是需要搜寻的网页的源码:

而匹配的模式很简单即前两个是大写字母或数字,後两个是前两个的反序中间是小写字母,cat即为小写提示同时也是答案的提示,陈皓给出的答案是:

这个正则表达式可以这样理解:

在cat.txt攵本中以-o指定的模式进行搜索,模式为大写字母数字,小写字母然后是同样的数字,大写字母;或者数字大写字母,小写字母然后是同样的大写字母,数字这里面用到了正则表达式的分组和后向引用的技巧:

上面的每个小括号中的内容(用\(或\)来取消()的字符转義)为一个分组,如下小写字母后紧跟着第二个分组[0-9],第一个分组[A-Z].\2表示对对应分组的反向引用,如下:

这样得到这样的模式后,通过sed截取其中间字符这时也用到了分组和反向应用,其中. 号表示匹配除换行符以外的任意字符这样就得到了中间字符,awk表示将字符写入到字苻串中这样就得到了通关字符串variables。

关于正则表达式学习推荐一个网站:

我要回帖

更多关于 ERP 的文章

 

随机推荐