Class Regexp
In: lib/core/facets/regexp/arity.rb
lib/core/facets/regexp/to_re.rb
Parent: Object

Methods

arity   to_re   to_regexp  

Public Instance methods

Returns the number of backreferencing subexpressions.

  /(a)(b)(c)/.arity  #=> 3
  /(a(b(c)))/.arity  #=> 3

Note that this is not perfect, especially with regards to \x and embedded comments.

CREDIT: Trans

[Source]

# File lib/core/facets/regexp/arity.rb, line 13
  def arity
    source.scan( /(?!\\)[(](?!\?[#=:!>-imx])/ ).length
  end

Simply returns itself. Helpful when converting strings to regular expressions, where regexp might occur as well —in the same vien as using to_s on symbols. The parameter is actaully a dummy parameter to coincide with String#to_re.

  /abc/.to_re  #=> /abc/

CREDIT: Trans

[Source]

# File lib/core/facets/regexp/to_re.rb, line 24
  def to_re(esc=false)
    self  # Of course, things really should know how to say "I" ;)
  end

Like to_re, but following Ruby‘s formal definitions, only a Regular expression type object will respond to this.

Note that to be of much real use this should be defined in core Ruby.

CREDIT: Florian Gross

[Source]

# File lib/core/facets/regexp/to_re.rb, line 10
  def to_regexp
    self
  end

[Validate]