- Содержание
- ereg
- ereg_replace
- eregi
- eregi_replace
- split
- sql_regcase
ereg
ereg -- парное значение регулярного выражения
Описание
int ereg (string pattern, string string, array [regs]);
Ищет парные значения string в регулярном выражении,
указанном в pattern.
Если парные значения найдены для подстрок в круглых скобках
pattern и функция вызывалась с третьим аргументом
regs, то парные значения будут сохранены в элементах regs.
$regs[1] будет содержать подстроку, которая начинается с первой левой круглой
скобки; $regs[2] будет содержать подстроку, начинающуюся со второй скобки и т.д.
$regs[0] будет содержать копию string.
Поиск чуствителен к регистру.
Функция возвращает true, если парное значение для pattern было найдено в
string, или false, если не было найдено парных значений или произошла ошибка.
Следующий код извлекает дату в ISO формате и выводит в формате DD.MM.YYYY:
Example 1. ereg() example if ( ereg( "([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs ) ) {
echo "$regs[3].$regs[2].$regs[1]";
} else {
echo "Invalid date format: $date";
} |
См. также eregi(),
ereg_replace(), и eregi_replace().
ereg_replaceereg_replace -- заменяет регулярное выражение
Описание
string ereg_replace (string pattern, string replacement, string
string);
Эта функция сканирует string на парные значения к
pattern, затем заменяет найденный текст на
replacement.
Если pattern содержит подстроки в круглых скобках, тоreplacement
может содержать подстроки вида
\\цифра, которые будут заменены текстом,
совпадающим с цифровой подстрокой в скобках; \\0 обработает все
содержимое строки. Может быть использовано до 9 подстрок. Скобки могут быть
сгруппированы, в этом случае они считаются по открывающим скобкам. Например,
следующий код напечатет "This was a test" три раза:
Пример 1. ereg_replace() $string = "This is a test";
echo ereg_replace( " is", " was", $string );
echo ereg_replace( "( )is", "\\1was", $string );
echo ereg_replace( "(( )is)", "\\2was", $string ); |
См. также ereg(),
eregi(), и eregi_replace().
eregieregi -- нечувствительный к регистру поиск парных
значений в регулярных выражениях
Описание
int eregi (string pattern, string string, array [regs]);
Эта функция идентична ereg() , за
исключением того, что она игнорирует различие в регистре у буквенных символов.
См. также ereg(),
ereg_replace(), и eregi_replace().
eregi_replaceeregi_replace -- замена регулярного выражения
без учета регистра
Описание
string eregi_replace (string pattern, string replacement, string
string);
Эта функция идентична ereg_replace()
за исключением того, что она игнорирует различие в регистре у буквенных
символов.
См. также ereg(),
eregi(), и ereg_replace().
splitsplit -- разбивает строку на массив по регулярному
выражению
Описание
array split (string pattern, string string, int [limit]);
Возвращает массив строк, каждая из которых является подстрокой строки,
образованные разбитием этой строки на части, отделенные друг от друга
pattern. Если произойдет ошибка, функция вернет false.
Для получения первых 5 полей из строки в
/etc/passwd:
Пример 1. split() $passwd_list = split( ":", $passwd_line, 5 ); |
Следует отметить, что pattern чувствительна к регистру.
См. также: explode() и
implode().
sql_regcasesql_regcase -- подготавливает регулярное
выражение к поиску без учета регистра
Описание
string sql_regcase (string string);
Возвращает верное регулярное выражение, которое не будет соответствовать
string, игнорирую регистр. Это выражение является string
, каждый символ которой переводится в выражение с квадратными скобками; это
выражение содержит символы исходной строки в верхнем и нижнем регистре, если это
возможно, в противном случае дважды вставляется исходный символ.
Пример 1. sql_regcase() echo sql_regcase( "Foo bar" ); |
Будет выдано [Ff][Oo][Oo][ ][Bb][Aa][Rr] .
Эта функция может быть использована организации нечувствительного к
регистру сравнения в продуктах, которые поддерживают только чувстуительные к
регистру выражения.
Назад, к содержанию
|