RegExp

[Raku LibXML Project] / [LibXML Module] / RegExp

class LibXML::RegExp

interface to libxml2 regular expressions

Synopsis

use LibXML::RegExp;
my LibXML::RegExp $compiled-re .= compile('[0-9]{5}(-[0-9]{4})?');
my LibXML::RegExp $compiled-re .= new(rexexp => '[0-9]{5}(-[0-9]{4})?');
if $compiled-re.isDeterministic() { ... }
if $compiled-re.matches($string) { ... }
if $string ~~ $compiled-re { ... }

my LibXML::RegExp $compiled-re .= new( :$regexp );
my Bool $matched = $compiled-re.matches($string);
my Bool $det     = $compiled-re.isDeterministic();

Description

This is a Raku interface to libxml2's implementation of regular expressions, which are used e.g. for validation of XML Schema simple types (pattern facet).

Methods

method new

method new(Str :$regexp) returns LibXML
my LibXML::RegExp $compiled-re .= new( :$regexp );

The new constructor takes a string containing a regular expression and return an object that contains a compiled regexp.

method compile

method compile(
    Str:D $regexp
) returns LibXML::RegExp

Compile constructor

LibXML::RegExp.compile($regexp) is equivalent to LibXML::RegExp.new(:$regexp)

multi method ACCEPTS

multi method ACCEPTS(
    Str:D $content
) returns Bool

(alias matches) Returns True if $content matches the regular expression

method isDeterministic

method isDeterministic() returns Bool

Returns True if the regular expression is deterministic.

(See the definition of determinism in the XML spec http://www.w3.org/TR/REC-xml/#determinism )

Copyright

2001-2007, AxKit.com Ltd.

2002-2006, Christian Glahn.

2006-2009, Petr Pajas.

License

This program is free software; you can redistribute it and/or modify it under the terms of the Artistic License 2.0 http://www.perlfoundation.org/artistic_license_2_0.

LibXML v0.6.12

Raku bindings to the libxml2 native library

Authors

  • David Warring

License

Artistic-2.0

Dependencies

File::TempMethod::AlsoW3C::DOM:ver<0.0.2+>XML

Test Dependencies

Provides

  • LibXML
  • LibXML::Attr
  • LibXML::Attr::Map
  • LibXML::CDATA
  • LibXML::Comment
  • LibXML::Config
  • LibXML::Dict
  • LibXML::Document
  • LibXML::DocumentFragment
  • LibXML::Dtd
  • LibXML::Dtd::AttrDecl
  • LibXML::Dtd::ElementContent
  • LibXML::Dtd::ElementDecl
  • LibXML::Dtd::Entity
  • LibXML::Dtd::Notation
  • LibXML::Element
  • LibXML::EntityRef
  • LibXML::Enums
  • LibXML::ErrorHandling
  • LibXML::HashMap
  • LibXML::HashMap::Maker
  • LibXML::InputCallback
  • LibXML::Item
  • LibXML::Namespace
  • LibXML::Node
  • LibXML::Node::List
  • LibXML::Node::Set
  • LibXML::PI
  • LibXML::Parser
  • LibXML::Parser::Context
  • LibXML::Pattern
  • LibXML::PushParser
  • LibXML::Raw
  • LibXML::Raw::DOM::Attr
  • LibXML::Raw::DOM::Document
  • LibXML::Raw::DOM::Element
  • LibXML::Raw::DOM::Node
  • LibXML::Raw::Defs
  • LibXML::Raw::Dict
  • LibXML::Raw::HashTable
  • LibXML::Raw::RelaxNG
  • LibXML::Raw::Schema
  • LibXML::Raw::TextReader
  • LibXML::Reader
  • LibXML::RegExp
  • LibXML::RelaxNG
  • LibXML::SAX
  • LibXML::SAX::Builder
  • LibXML::SAX::Handler
  • LibXML::SAX::Handler::SAX2
  • LibXML::SAX::Handler::SAX2::Locator
  • LibXML::SAX::Handler::XML
  • LibXML::Schema
  • LibXML::Text
  • LibXML::Types
  • LibXML::XPath::Context
  • LibXML::XPath::Expression
  • LibXML::XPath::Object
  • LibXML::_CharacterData
  • LibXML::_DomNode
  • LibXML::_Options
  • LibXML::_ParentNode
  • LibXML::_Validator

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.