怎么样使用Ruby程序中正则表达式

Python016

怎么样使用Ruby程序中正则表达式,第1张

(1)创建:简单地用//即可创建,也可也用re = Regexp.new("正则表达式"),创建

(2)匹配:正则表达式 =~ 字符串,匹配成功返回字符串位置,不成功返回nil,可也用!~表示不匹配

(3)正则表达式选项:imx,i:忽略大小写、m可以匹配多行,x正则表达式中可以有空格、#注释,不会当成要匹配的内容。如 /NiHao/i =~ "nihao" 返回0

(4)捕获:用(),打印第几个捕获可以用 p $1,$2……,$&表示匹配整个正则表达式的字串部分。&` 返回原字符串匹配部分之前的字符串,&' 返回原字符串中匹配部分之后的字符串

(5)正则替换:sub替换一次,gsub全部替换。scan不替换,但是可以像gsub一样找到全部能匹配的部分,用来对其进行处理

undefined是指页面出现了未知错误,提示undefined一般是在开发网站的时候定义不正确或是转换不正确,或是找不到定义才会提示undefined未定义这个错误,如果只是浏览网页,不必在乎,换个时间浏览网页。

undefined是一个特殊值,通常用于指示变量尚未赋值。对未定义值的引用返回特殊值。其实大多数计算机语言,只有一个表示"无"的值,比如,C语言的NULL,Java语言的null,Python语言的None,Ruby语言的nil。

一般undefined问题只有2个方面即网站服务器和浏览器本地问题。因为你试了多个浏览器都出现该问题,所以不是浏览器本地问题。建议看一下页面源码,如果源码上也是undefined那就说明页面本来就是这样,这就属于是网站服务器问题。

扩展资料:

undefined与null

在JavaScript中,将一个变量赋值为undefined或null,几乎没区别。undefined和null在if语句中,都会被自动转为false,相等运算符甚至直接报告两者相等。Google公司开发的JavaScript语言的替代品Dart语言,就明确规定只有null,没有undefined。

原来,这与JavaScript的历史有关。1995年JavaScript诞生时,最初像Java一样,只设置了null作为表示"无"的值。根据C语言的传统,null被设计成可以自动转为0。但是,JavaScript的设计Brendan Eich,觉得这样做还不够,有两个原因。

首先,null像在Java里一样,通常被当成一个对象。但是,JavaScript的数据类型一般分成原始类型(primitive)和合成类型(complex)两大类,Brendan Eich觉得表示"无"的值最好不是对象。

其次,JavaScript的最初版本没有包括错误处理机制,发生数据类型不匹配时,往往是自动转换类型或者默默地失败。Brendan Eich觉得,如果null自动转为0,很不容易发现错误。

因此,Brendan Eich又设计了一个undefined。JavaScript的最初版本是这样区分的:null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。

参考资料来源:百度百科—undefined