需求

函数,需要通过参数传递字符串,用来做正则匹配

reg = '[0-9]+'
def func(str, reg)
str.scan(reg)
end

由于 reg 在其它地方定义, reg 是字符串, 传进来后发现没法直接用于正则匹配

返回的结果总是 [] 空字符串.

解决

通过 Regexp 来通过 string 生成正则匹配的条件

def func)(str, reg)
reg = Regexp.new("#{reg}"[0..-1])
"#{str}" =~ reg
end

SO, all is ok.

ruby 把字符串转为正则匹配表达式的更多相关文章

  1. jQuery中的一些正则匹配表达式

    jQuery常用正则匹配表达式 落雨 //整数 "^-?[1-9]\\d*$", //正整数 "^[1-9]\\d*$", //负整数 intege2: &qu ...

  2. LeetCode10 Hard,带你实现字符串的正则匹配

    本文始发于个人公众号:TechFlow 这是LeetCode的第10题,题目关于字符串的正则匹配,我们先来看题目相关信息: Link Regular Expression Matching Diffi ...

  3. js字符串与正则匹配

    这里就说一下具体的使用方法,不做过多的解释. 字符串匹配正则的方法:str.方法(reg) 1.str.search() 参数是正则,将会从开始查找字符串中与正则匹配的字符,并返回该字符的第一次出现的 ...

  4. Jqgrid利用正则匹配表达式正确移除html标签

    在使用JqGrid表格插件过程中,遇到一个问题:后台取出来的字段是带有Html标签的,于是将内容填充到表格之后,带有的html标签会把表格撑开或者每一行的内容显示不统一,导致非常难看,就像下图所示: ...

  5. shell正则匹配IP地址

    IP分成5大类: A类地址 ⑴ 第1字节为网络地址,其它3个字节为主机地址. ⑵ 范围:1.0.0.1—126.155.255.254 ⑶ 私有地址和保留地址: ① 10.X.X.X是私有地址(只能在 ...

  6. 详解一个自己原创的正则匹配IP的表达式

    这里给大家详细讲解一下一个匹配IP地址的正则表达式, 有关正则方面的知识,会在详细的讲解中提到. 在讲解之前,我先给大家介绍一下,ip地址的生成规则. IP地址,是由32位数字二进制转为四个十进制的字 ...

  7. REGEXP 正则的实现两个字符串组的匹配。(regexp)

    主要懂3个mysql的方法:replace[替换]   regexp[正则匹配]    concat[连接]   由于某些原因,有时候我们没有按照范式的设计准则而把一些属性放到同一个字符串字段中.比如 ...

  8. Linux shell中的一个问题 ${}带正则匹配的表达式

    目前在准备龙芯项目的PMON,在研究其编译过程的时候,看到一些make 语句,百思不得其解.后来在shell编程中看到一点资料,牵扯到Shell中的正则表达式.故记录下来,以备后来查阅. 问题: 在某 ...

  9. php中的正则函数:正则匹配,正则替换,正则分割 所有的操作都不会影响原来的字符串.

    有一个长期的误解, 如果要分组, 必须用 小括号 和 |, 而不能用 中括号 和 |. [ab|AB]表示的不是 匹配 ab或 AB, 而是表示 匹配 a,b, |, A, B 这5个字符中 的任意 ...

随机推荐

  1. 位图9宫格 BitmapSlice9.jsfl

    /** * Version 1.1, May 4: fixed issue with symbols in library folders. **/ /** * BitmapSlice9 JSFL b ...

  2. NOIP2004 合唱队列

    三.合唱队形 (chorus.pas/dpr/c/cpp) [问题描述] N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形. 合唱队形是指这样的一种队形:设K位 ...

  3. soliworks三维机柜布局(三)绘制电气线路图

    三维机柜布局中的自动布线是根据线路图中的电气连接属性布的.

  4. Android模拟器访问本地的apache tomcat服务

    1. 在官网http://tomcat.apache.org/上下载tomcat,根据自己的电脑下载相应的文件 2.将apache-tomcat-6.0.37-windows-x64.zip包解压到本 ...

  5. vss2005使用

    http://www.cnblogs.com/nianyuwen/archive/2012/06/13/2547588.html 签出状态的文件别人无法使用:

  6. 高性能javascript

    高性能javascript开发 标签(空格分隔): javascript DOM访问与修改 访问DOM元素是具有代价的,修改元素代价较为昂贵,会导致浏览器重新计算页面的几何变化. 尽量减少DOM访问, ...

  7. DONET三层架构开发初步

    .NET三层架构开发初步 今天咱们来谈下三层架构.说到三层架构,搞过点程序的可能都知道三层架构的概念.但是对三层的精髓可能不是很了解. 首先说下自己对三层的理解,就是使用三个(多个)项目结合起来开发出 ...

  8. fastica matlab 转载

    FastICA工具箱1 http://chunqiu.blog.ustc.edu.cn/?p=68#comment-3512 FastICA代码网址如下:http://research.ics.aal ...

  9. 使用教程sqlite

    访问地址: http://www.runoob.com/sqlite/sqlite-where-clause.html

  10. String的那点小事儿

    1.== 比较的是什么? 1 package xupengwei.string; 2 /** 3 * @describe: 4 * @author chenmo-xpw 5 * @version 20 ...