1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
|
<refentry id="streamtuner-st-re-api">
<refmeta>
<refentrytitle>st-re</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>STREAMTUNER Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>st-re</refname><refpurpose>functions for matching regular expressions.</refpurpose>
</refnamediv>
<refsynopsisdiv><title>Synopsis</title>
<synopsis>
#define <link linkend="st-re-match">st_re_match</link> (regexp, str)
<link linkend="gboolean">gboolean</link> <link linkend="st-re-parse">st_re_parse</link> (const <link linkend="regex-t">regex_t</link> *regexp,
const <link linkend="char">char</link> *str,
...);
</synopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>
</para>
</refsect1>
<refsect1>
<title>Details</title>
<refsect2>
<title><anchor id="st-re-match"/>st_re_match()</title>
<indexterm><primary>st_re_match</primary></indexterm><programlisting>#define st_re_match(regexp, str)</programlisting>
<para>
Evaluates to <literal>TRUE</literal> if <parameter>str</parameter> matches <parameter>regexp</parameter>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>regexp</parameter> :</term>
<listitem><simpara> a <link linkend="regex-t"><type>regex_t</type></link> to match.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>str</parameter> :</term>
<listitem><simpara> a string to match <parameter>regexp</parameter> against.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="st-re-parse"/>st_re_parse ()</title>
<indexterm><primary>st_re_parse</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link> st_re_parse (const <link linkend="regex-t">regex_t</link> *regexp,
const <link linkend="char">char</link> *str,
...);</programlisting>
<para>
Checks if <parameter>str</parameter> matches <parameter>regexp</parameter>, and if it does, distributes the
substrings of <parameter>str</parameter> matched by the parenthesized subexpressions of
<parameter>regexp</parameter>.
</para>
<para>
<informalexample><programlisting>
int status;
regex_t re;
gboolean matches;
char *value1, *value2;
status = regcomp(&re, "name1=(.*) name2=(.*)", REG_EXTENDED);
g_assert(status == 0);
matches = st_re_parse(&re, "name1=foo name2=bar", &value1, &value2);
</programlisting></informalexample></para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>regexp</parameter> :</term>
<listitem><simpara> a regular expression to match.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>str</parameter> :</term>
<listitem><simpara> a string to match <parameter>regexp</parameter> against.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>...</parameter> :</term>
<listitem><simpara> a list of char ** pointers for storing substrings of
<parameter>str</parameter>. The number of char ** pointers provided must be equal to
<parameter>regexp->re_nsub</parameter>. The strings stored in the pointers should be freed
when no longer needed.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <literal>TRUE</literal> if <parameter>str</parameter> matches <parameter>regexp</parameter>.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
</refsect1>
</refentry>
|