eregex.rb

目的·概要

提供了由2个正则表达式构成AND/OR的功能。

在Regexp类中定义&和|方法. 若与两个正则表达式都匹配的话, 前者(RegAnd)返回真;若只能匹配其中一个时,则后者(RegOr)为真. RegAnd、RegOr都只能支持=~。

范例代码

require 'eregex'
p "abc" =~ /b/|/c/
p "abc" =~ /b/&/c/

class Regexp

在扩展了内部类Regexp之后,定义了下列方法。

实例方法

Regexp#&(other)

返回RegAnd(self,other)

Regexp#|(other)

返回RegOr(self,other)

class RegAnd

实例方法

RegAnd#initialize(reg1,reg2)

构造函数

RegAnd#=~(str)

str同时匹配reg1reg2, 则返回真

class RegOr

实例方法

RegOr#initialize(reg1,reg2)

构造函数

RegOr#=~(str)

str只匹配reg1reg2中的一个时,就返回真