diff options
Diffstat (limited to 'buildscripts/phing/classes/phing/util/regexp')
3 files changed, 0 insertions, 347 deletions
| diff --git a/buildscripts/phing/classes/phing/util/regexp/PregEngine.php b/buildscripts/phing/classes/phing/util/regexp/PregEngine.php deleted file mode 100644 index 758b40f3..00000000 --- a/buildscripts/phing/classes/phing/util/regexp/PregEngine.php +++ /dev/null @@ -1,105 +0,0 @@ -<?php -/*  - *  $Id: PregEngine.php,v 1.6 2003/12/24 12:38:42 hlellelid Exp $ - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * This software consists of voluntary contributions made by many individuals - * and is licensed under the LGPL. For more information please see - * <http://phing.info>.  - */ - -require_once 'phing/util/regexp/RegexpEngine.php'; - -/** - * PREG Regexp Engine. - * Implements a regexp engine using PHP's preg_match(), preg_match_all(), and preg_replace() functions. - *  - * @author hans lellelid, hans@velum.net - * @package phing.util.regex - */ -class PregEngine implements RegexpEngine { - -    /** -     * @var boolean -     */ -    private $ignoreCase = false; -         -    /** -     * Sets whether or not regex operation is case sensitive. -     * @param boolean $bit -     * @return void -     */ -    function setIgnoreCase($bit) { -        $this->ignoreCase = (boolean) $bit; -    } - -    /** -     * Gets whether or not regex operation is case sensitive. -     * @return boolean -     */ -    function getIgnoreCase() { -        return $this->ignoreCase; -    } -         -    /** -     * The pattern needs to be converted into PREG style -- which includes adding expression delims & any flags, etc. -     * @param string $pattern -     * @return string prepared pattern. -     */ -    private function preparePattern($pattern) -    { -        return '/'.$pattern.'/'.($this->ignoreCase ? 'i' : ''); -    } -     -    /** -     * Matches pattern against source string and sets the matches array. -     * @param string $pattern The regex pattern to match. -     * @param string $source The source string. -     * @param array $matches The array in which to store matches. -     * @return boolean Success of matching operation. -     */ -    function match($pattern, $source, &$matches) {  -        return preg_match($this->preparePattern($pattern), $source, $matches); -    } - -    /** -     * Matches all patterns in source string and sets the matches array. -     * @param string $pattern The regex pattern to match. -     * @param string $source The source string. -     * @param array $matches The array in which to store matches. -     * @return boolean Success of matching operation. -     */         -    function matchAll($pattern, $source, &$matches) { -        return preg_match_all($this->preparePattern($pattern), $source, $matches); -    } - -    /** -     * Replaces $pattern with $replace in $source string. -     * References to \1 group matches will be replaced with more preg-friendly -     * $1. -     * @param string $pattern The regex pattern to match. -     * @param string $replace The string with which to replace matches. -     * @param string $source The source string. -     * @return string The replaced source string. -     */         -    function replace($pattern, $replace, $source) { -        // convert \1 -> $1, because we want to use the more generic \1 in the XML -        // but PREG prefers $1 syntax. -        $replace = preg_replace('/[^\\\]\\\(\d+)/', '$1', $replace); -        return preg_replace($this->preparePattern($pattern), $replace, $source); -    } - -} - -?>
\ No newline at end of file diff --git a/buildscripts/phing/classes/phing/util/regexp/Regexp.php b/buildscripts/phing/classes/phing/util/regexp/Regexp.php deleted file mode 100644 index 68c06668..00000000 --- a/buildscripts/phing/classes/phing/util/regexp/Regexp.php +++ /dev/null @@ -1,168 +0,0 @@ -<?php -/*  - *  $Id: Regexp.php,v 1.5 2003/12/24 18:40:33 hlellelid Exp $ - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * This software consists of voluntary contributions made by many individuals - * and is licensed under the LGPL. For more information please see - * <http://phing.info>.  - */ - -/** - * A factory class for regex functions. - * @author Hans Lellelid <hans@xmpl.org> - * @package  phing.util.regexp - * @version $Revision: 1.5 $ - */ -class Regexp { - -    /** -     * Matching groups found.  -     * @var array -     */ -    private $groups = array(); -      -    /** -     * Pattern to match. -     * @var string -     */ -    private $pattern; -     -    /** -     * Replacement pattern. -     * @var string -     */ -    private $replace; -     -    /** -     * The regex engine -- e.g. 'preg' or 'ereg'; -     * @var RegexpEngine -     */ -    private $engine; -     -    /** -     * Constructor sets the regex engine to use (preg by default). -     * @param string $_engineType The regex engine to use. -     */ -    function __construct($engineType='preg') {         -        if ($engineType == 'preg') { -            include_once 'phing/util/regexp/PregEngine.php'; -            $this->engine = new PregEngine(); -        } elseif ($engineType == 'ereg') { -            include_once 'phing/util/regexp/EregEngine.php'; -            $this->engine = new EregEngine(); -        } else { -            throw new BuildException("Invalid engine type for Regexp: " . $engineType); -        }                 -    } - -    /** -     * Sets pattern to use for matching. -     * @param string $pat The pattern to match on. -     * @return void -     */ -    public function setPattern($pat) { -        $this->pattern = (string) $pat;         -    } -     -     -    /** -     * Gets pattern to use for matching. -     * @return string The pattern to match on. -     */ -    public function getPattern() { -        return $this->pattern; -    } -     -    /** -     * Sets replacement string. -     * @param string $rep The pattern to replace matches with. -     * @return void -     */ -    public function setReplace($rep) { -        $this->replace = (string) $rep; -    } -     -    /** -     * Gets replacement string. -     * @return string The pattern to replace matches with. -     * @return void -     */ -    public function getReplace() { -        return $this->replace; -    } -     -    /** -     * Performs match of specified pattern against $subject. -     * @param string $subject The subject, on which to perform matches. -     * @return boolean Whether or not pattern matches subject string passed. -     */ -    public function matches($subject) { -        if($this->pattern === null) {             -            throw new Exception("No pattern specified for regexp match()."); -        } -        return $this->engine->match($this->pattern, $subject, $this->groups); -    } -     -    /** -     * Performs replacement of specified pattern and replacement strings. -     * @param string $subject Text on which to perform replacement. -     * @return string subject after replacement has been performed. -     */ -    public function replace($subject) { -        if ($this->pattern === null || $this->replace === null) { -            throw new Exception("Missing pattern or replacement string regexp replace()."); -        }         -        return $this->engine->replace($this->pattern, $this->replace, $subject); -    } -     -    /** -     * Get array of matched groups. -     * @return array Matched groups -     */  -    function getGroups() { -        return $this->groups; -    } - -    /** -     * Get specific matched group.  -     * @param integer $idx -     * @return string specified group or NULL if group is not set. -     */  -    function getGroup($idx) {  -        if (!isset($this->groups[$idx])) { -            return null; -        } -        return $this->groups[$idx]; -    } -     -    /** -     * Sets whether the regexp matching is case insensitive. -     * (default is false -- i.e. case sensisitive) -     * @param boolean $bit -     */  -    function setIgnoreCase($bit) { -        $this->engine->setIgnoreCase($bit); -    } -     -    /** -     * Gets whether the regexp matching is case insensitive. -     * @return boolean -     */ -    function getIgnoreCase() { -        return $this->engine->getIgnoreCase(); -    } -}  - -?>
\ No newline at end of file diff --git a/buildscripts/phing/classes/phing/util/regexp/RegexpEngine.php b/buildscripts/phing/classes/phing/util/regexp/RegexpEngine.php deleted file mode 100644 index 7d323466..00000000 --- a/buildscripts/phing/classes/phing/util/regexp/RegexpEngine.php +++ /dev/null @@ -1,74 +0,0 @@ -<?php -/*  - *  $Id: RegexpEngine.php,v 1.4 2003/12/24 12:38:42 hlellelid Exp $ - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * This software consists of voluntary contributions made by many individuals - * and is licensed under the LGPL. For more information please see - * <http://phing.info>.  - */ - -/** - * Contains some shared attributes and methods -- and some abstract methods with - * engine-specific implementations that sub-classes must override. - *  - * @author Hans Lellelid <hans@velum.net> - * @package phing.util.regex - * @version $Revision: 1.4 $ - */ -interface RegexpEngine { -     -    /** -     * Sets whether or not regex operation should ingore case. -     * @param boolean $bit -     * @return void -     */ -    public function setIgnoreCase($bit); -     -    /** -     * Returns status of ignore case flag. -     * @return boolean -     */ -    public function getIgnoreCase(); -     -    /** -     * Matches pattern against source string and sets the matches array. -     * @param string $pattern The regex pattern to match. -     * @param string $source The source string. -     * @param array $matches The array in which to store matches. -     * @return boolean Success of matching operation. -     */ -    function match($pattern, $source, &$matches); -     -    /** -     * Matches all patterns in source string and sets the matches array. -     * @param string $pattern The regex pattern to match. -     * @param string $source The source string. -     * @param array $matches The array in which to store matches. -     * @return boolean Success of matching operation. -     */     -    function matchAll($pattern, $source, &$matches); - -    /** -     * Replaces $pattern with $replace in $source string. -     * @param string $pattern The regex pattern to match. -     * @param string $replace The string with which to replace matches. -     * @param string $source The source string. -     * @return string The replaced source string. -     */         -    function replace($pattern, $replace, $source); - -} - -?>
\ No newline at end of file | 
