Files
php-doc-ru/reference/spl/recursiveregexiterator/construct.xml
Alexey Pyltsyn 0057a44d6e Upd
git-svn-id: https://svn.php.net/repository/phpdoc/ru/trunk@343995 c90b9560-bf6c-de11-be94-00142212c4b1
2018-01-28 08:52:19 +00:00

205 lines
6.5 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: dd07341fae2c414adc1f700be0890ff32e8daab4 Maintainer: tmn Status: ready -->
<!-- Reviewed: no -->
<!-- $Revision$ -->
<refentry xml:id="recursiveregexiterator.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>RecursiveRegexIterator::__construct</refname>
<refpurpose>Конструктор класса RecursiveRegexIterator</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<constructorsynopsis>
<modifier>public</modifier> <methodname>RecursiveRegexIterator::__construct</methodname>
<methodparam><type>RecursiveIterator</type><parameter>iterator</parameter></methodparam>
<methodparam><type>string</type><parameter>regex</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>mode</parameter><initializer>self::MATCH</initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>0</initializer></methodparam>
<methodparam choice="opt"><type>int</type><parameter>preg_flags</parameter><initializer>0</initializer></methodparam>
</constructorsynopsis>
<para>
Создает новый объект-итератор регулярного выражения.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>iterator</parameter></term>
<listitem>
<para>
Рекурсивный итератор к которому требуется применить фильтр на основе
регулярного выражения.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>regex</parameter></term>
<listitem>
<para>
Регулярное выражение.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>mode</parameter></term>
<listitem>
<para>
Режим работы, список доступных режимов приведен в описании метода
<methodname>RegexIterator::setMode</methodname>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Специальные флаги. Список доступных флагов приведен в описании метода
<methodname>RegexIterator::setFlags</methodname>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>preg_flags</parameter></term>
<listitem>
<para>
Флаги регулярного выражения. Список флагов зависит от режима работы:
</para>
<para>
<table>
<title><classname>RegexIterator</classname> preg_flags</title>
<tgroup cols="2">
<thead>
<row>
<entry>режим работы</entry>
<entry>доступные флаги</entry>
</row>
</thead>
<tbody>
<row>
<entry><varname linkend="regexiterator.constants.all-matches">RecursiveRegexIterator::ALL_MATCHES</varname></entry>
<entry>
См. <function>preg_match_all</function>.
</entry>
</row>
<row>
<entry><varname linkend="regexiterator.constants.get-match">RecursiveRegexIterator::GET_MATCH</varname></entry>
<entry>
См. <function>preg_match</function>.
</entry>
</row>
<row>
<entry><varname linkend="regexiterator.constants.match">RecursiveRegexIterator::MATCH</varname></entry>
<entry>
См. <function>preg_match</function>.
</entry>
</row>
<row>
<entry><varname linkend="regexiterator.constants.replace">RecursiveRegexIterator::REPLACE</varname></entry>
<entry>
нет
</entry>
</row>
<row>
<entry><varname linkend="regexiterator.constants.split">RecursiveRegexIterator::SPLIT</varname></entry>
<entry>
См. <function>preg_split</function>.
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>RecursiveRegexIterator::__construct</function></title>
<para>
Создает новый объект-итератор RegexIterator, который выбирает все строки,
которые начинаются со слова 'test'.
</para>
<programlisting role="php">
<![CDATA[
<?php
$rArrayIterator = new RecursiveArrayIterator(array('test1', array('tet3', 'test4', 'test5')));
$rRegexIterator = new RecursiveRegexIterator($rArrayIterator, '/^test/',
RecursiveRegexIterator::ALL_MATCHES);
foreach ($rRegexIterator as $key1 => $value1) {
if ($rRegexIterator->hasChildren()) {
// выведем все дочерние элементы
echo "Дочерние элементы: ";
foreach ($rRegexIterator->getChildren() as $key => $value) {
echo $value . " ";
}
echo "\n";
} else {
echo "Нет дочерних элементов\n";
}
}
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
Нет дочерних элементов
Дочерние элементы: test4 test5
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>preg_match</function></member>
<member><function>preg_match_all</function></member>
<member><function>preg_replace</function></member>
<member><function>preg_split</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->