Tag: regex

  • Passing Environment Variables to Terraform with RegExp

    In a Terraform template, an input variable can be used to set some configuration point for a resource, such as In some scenario the input variable can get its value from an environment variable in the shell where terraform runs. It looks like This is handy where there is just a few variables. If there…

  • 带着小抄去上班

    你上考场那年带小抄了么?带了也别说,那是作弊。不过上班跟考试不同,你要尽可能的用上一切能方便工作的工具。下面是我最近喜欢的几张小抄: 以上小抄来自 http://www.addedbytes.com/cheat-sheets Thanks Dave!

  • 牛刀小试RegEx

    RegEx中文叫做正则表达式,虽然不是很新的东西了,我很纳闷我居然是才开始了解它。在数据库中查询keyword一般是写成 select * from tablename where columnname LIKE ‘%keyword%’ 而java我记得不是很清楚了,大概是 if(myString.indexOf(keyword) != -1){ //do things… } 这个只是简单匹配,如果有复杂要求就要写多得多的代码了。例如判断keyword是否是一个数字开头,紧跟1个小写字母,跟随若干数字,最后以”pattern”结尾等等,就不是一行代码能写出来的了。对于上例,RegEx+Ruby的写法就是 if keyword =~ /^\d[a-z]\d+pattern$/ #do things end 上式中,//是RegEx的边界,类似””是字符串的边界一样。接下来^代表匹配的开始;\d代表数字,就是0 – 9;[a-z]就是一个从a到z的小写字母了;+是后缀,表示1个或多个,因此\d+就是1个或多个数字的意思了;最后作为关键字的pattern直接写上即可;$代表匹配的结束。 更灵活的应用就是|符号和()括号了。例如判断文本是否包含x或X,RegEx就可以写 /x|X/ 如果要判断文本是否包含多个连续的x或者X,例如xXX、XxX,RegEx就可以写 /(x|X)+/ 如果要判断文本是否包含XXX、XXXX、XXXXX,RegEx可以写 /X{3,5} / 目前的了解就是这么多了,不过以上这些组合起来应该已经可以应付很多种情况了。继续学习。 UPDATE: Regex tutorial from guru99.com