javascript中正则表达式和ruby中的一点差异
看到一个例子,不过这个例子中正则表达式的格式貌似是错的:
Function.prototype.get_name = function(){return this.name || this.toString().match(/function\s*(\[^()*](/)[1];
}
代码的原意是给任意有名的Function实例对象添加返回其名称的方法get_name;不过其中正则的格式不怎么对,简单思考了一下很快用ruby语法写出了:
s = "function foo(x){...}"
s.match(/function\s*(.*)\(/)[1] #返回"foo"
不过同样的正则格式在js中取得不对,貌似是贪婪的获取啊!?那么直接在*后面加?号吧:
foo.toString().match(/function\s*(.*?)\(/)
总结一下,js中正则默认是贪婪模式,而ruby中则比较“谨慎”,这就是正则引擎的不同吗? :)
javascript中正则表达式和ruby中的一点差异相关推荐
- oracle中正则表达式规则,Oracle中的正则表达式(及函数)详解
1.概述 相信大家对正则表达式都不陌生,从linux下的命令到Java等编程语言,正则表达式无处不在,虽然我们实际使用的时候也并不一定太多,但是当我们要处理字符串时,它确实是一个强大的工具. 上一篇文 ...
- java matcher group方法_Java中正则表达式相关类中Matcher.group()方法
##简介 最近在做一个项目,需要使用matcher.group()方法匹配出需要的内容. ##分组 正则表达式 AA((A)(B(C))) group()方法是针对()来说的,group(0)指的是整 ...
- js中正则表达式提取字母中的数字:利用字符串方法match
var aaa = "666kk88kk99" var bbb = / [0-9] / g // 表达式不是字符串,不能使用"引号括起来. var ccc = aaa.m ...
- ruby中!!_Ruby反向! 功能
ruby中!! 逆转! Ruby中的功能 (reverse! function in Ruby) As the name suggests, reverse! function is used to ...
- 详解Javascript中正则表达式的使用
章节目录 Javascript中正则表达式的使用 String.prototype.search方法 String.prototype.replace方法 String.prototype.split ...
- javascript中正则表达式的基础语法
前面的话 正则表达式在人们的印象中可能是一堆无法理解的字符,但就是这些符号却实现了字符串的高效操作.通常的情况是,问题本身并不复杂,但没有正则表达式就成了大问题.javascript中的正则表达式作为 ...
- Ruby中的设计模式
继续 上 节讲述过的Singleton . Proxy 及 Iterator各模式,本节再来考察几个别的设计模式.下面按顺序来考察 Prototype . Template Method 和 Obse ...
- shell中正则表达式详解_【转】【shell】正则表达式使用详解(一)
入门简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Perl或PHP脚本语言,以及awk或se ...
- js 正则中冒号代表什么_javascript中正则表达式语法详解
好久都没有写博客了,主要是太懒了,尤其是在阳春三月,风和日丽的日子,太阳暖暖的照在身上,真想美美的睡上一觉.就导致了这篇博客拖到现在才开始动笔,javascript的正则这一块也不是什么新的东西,主要 ...
最新文章
- 电子科大博士生杨超火了!2年实现Science+Nature一作双杀
- 【 MATLAB 】信号处理工具箱的信号产生函数之 sawtooth 函数简记
- android6.0单独编译和调试framework源码的方法
- Teams Bot如何做全球化
- 100多千克的柠檬电池车可以开吗?
- dt决策树_决策树:构建DT的分步方法
- java注解 interface_java @FunctionalInterface注解详解
- 国科大高级人工智能3-DNN(BM/RBM/DBN/DBM)
- 高数复习9.13 函数与极限
- win10安装vmware tools + 无法拖拽文件解决
- Python版基于递归的冒泡排序算法
- centos7 安装sql_在Linux Distribution CentOS 7上安装SQL Server vNext CTP
- ffmpeg下载rtmp flv
- Android中的消息通知Toast和Notification
- 羊坊店不眠夜(续集)
- MySql统计函数COUNT详解
- IDEA突然不能输入中文
- Apache Hudi的编译及安装
- 如何高效的进行空值的填充
- package.json中private选项的作用
热门文章
- 商业方向的大数据专业_好程序员大数据培训分享大数据就业方向有哪些
- vba 正则表达式前后添加字符_不规则内容提取正则表达式
- chrome应用程序无法启动因为并行配置不正确_Win8打不开软件提示并行配置不正确的解决方法...
- 如何安装mysql 5.6_如何通过编译工具安装mysql 5.6
- sqlserver修改链接服务器,sqlserver怎么新建链接服务器
- linux中文件打包压缩,linux在文件打包和压缩
- java二进制 字节数组 字符 十六进制 BCD编码转换
- Java内部类实例测试及总结
- Python案例:求转置矩阵
- 《天天数学》连载08:一月八日