The MongoRegex class

(PECL mongo >=0.8.1)

Внимание

This extension that defines this class is deprecated. Instead, the MongoDB extension should be used. Alternatives to this class include:

Введение

This class can be used to create regular expressions. Typically, these expressions will be used to query the database and find matching strings. More unusually, they can be saved to the database and retrieved.

Regular expressions consist of four parts. First a / as starting delimiter, then the pattern, another / and finally a string containing flags.

Пример #1 Regular expression pattern

/pattern/flags

MongoDB recognizes six regular expression flags:

  • i: Case insensitive

  • m: Multiline

  • x: Can contain comments

  • l: locale

  • s: dotall, "." matches everything, including newlines

  • u: match unicode

Обзор классов

MongoRegex {
/* Fields */
public string $regex ;
public string $flags ;
/* Методы */
public __construct ( string $regex )
public string __toString ( void )
}

Содержание

Коментарии

First you must declare and define your regexObj
Here I am looking for all entry of my database wich is like "%Nicolas%" and the /i param is used for Insensitive Case
 $regexObj = new MongoRegex("/^Nicolas/i");

<?php
// I attach the regexObj to my Where Condition
 
$where = array("ctname" => $regexObj);

// Execute the request
 
$resultset $this->db->Infos->find($where);

// Parsing the results 
 
while ($resultset->hasNext())
 {
         
$clientObj $resultset->getNext();
          echo 
"Client Name: ".$clientObj["cname"]."</br>";
 }
?>
2010-11-19 11:49:26
http://php5.kiev.ua/manual/ru/class.mongoregex.html
/*
 Use the "i" option to make searches with Case Insensitive
 Find results beginning with $q
 */

$search = "V";

// Case Sensitive

$where = array('name' => array('$regex' => new MongoRegex("/^$search/")));
$cursor = $collection->find($where);

//Case Insensitive

$where = array('name' => array('$regex' => new MongoRegex("/^$search/i")));
$cursor = $collection->find($where);
2013-12-24 17:17:15
http://php5.kiev.ua/manual/ru/class.mongoregex.html
here is an example for case insensitive search.If there are two fields (user_name/company_name) in collection;
<?php
$search_string
='baR';
$searchQuery = array(
           
'$or' => array(
                array(
                   
'user_name' => new MongoRegex("/^$search_string/i"),
                    ),
                array(
                   
'company_name' => new MongoRegex("/^$search_string/i"),
                    ),
                )
            );

$cursor $customers->find($searchQuery);
?>
2014-10-27 08:36:33
http://php5.kiev.ua/manual/ru/class.mongoregex.html

    Поддержать сайт на родительском проекте КГБ