~ubuntu-branches/ubuntu/raring/glib2.0/raring-proposed

« back to all changes in this revision

Viewing changes to docs/reference/glib/html/glib-Perl-compatible-regular-expressions.html

  • Committer: Package Import Robot
  • Author(s): Iain Lane
  • Date: 2013-02-07 11:27:42 UTC
  • mfrom: (1.63.15)
  • Revision ID: package-import@ubuntu.com-20130207112742-c7tk4hqwel9jefhq
Tags: 2.35.7-0ubuntu1
* New upstream release
* Refresh patches
* 08_fix_closure_invalidation.patch,
  git_ignore_fstab_bind_mount.patch,
  git_tz_double_unref.patch,
  git_gfile_completion_error.patch
  git_fix_gvariant_tuple_checking.patch: Drop, appiled upstream
* revert_btrfs_ioctl_support.patch: Drop, problem that prompted this revert
  is fixed in this release.
* Add new symbols introduced in this release. 

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
<head>
4
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
5
<title>Perl-compatible regular expressions</title>
6
 
<meta name="generator" content="DocBook XSL Stylesheets V1.78.0">
 
6
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7
7
<link rel="home" href="index.html" title="GLib Reference Manual">
8
8
<link rel="up" href="glib-utilities.html" title="GLib Utilities">
9
9
<link rel="prev" href="glib-Glob-style-pattern-matching.html" title="Glob-style pattern matching">
10
10
<link rel="next" href="glib-regex-syntax.html" title="Regular expression syntax">
11
 
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
 
11
<meta name="generator" content="GTK-Doc V1.18.1 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
13
</head>
14
14
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
305
305
<p>
306
306
Error codes returned by regular expressions functions.
307
307
</p>
308
 
<div class="variablelist"><table border="0" class="variablelist">
309
 
<colgroup>
 
308
<div class="variablelist"><table border="0">
310
309
<col align="left" valign="top">
311
 
<col>
312
 
</colgroup>
313
310
<tbody>
314
311
<tr>
315
312
<td><p><a name="G-REGEX-ERROR-COMPILE:CAPS"></a><span class="term"><code class="literal">G_REGEX_ERROR_COMPILE</code></span></p></td>
682
679
<p>
683
680
Flags specifying compile-time options.
684
681
</p>
685
 
<div class="variablelist"><table border="0" class="variablelist">
686
 
<colgroup>
 
682
<div class="variablelist"><table border="0">
687
683
<col align="left" valign="top">
688
 
<col>
689
 
</colgroup>
690
684
<tbody>
691
685
<tr>
692
686
<td><p><a name="G-REGEX-CASELESS:CAPS"></a><span class="term"><code class="literal">G_REGEX_CASELESS</code></span></p></td>
857
851
<p>
858
852
Flags specifying match-time options.
859
853
</p>
860
 
<div class="variablelist"><table border="0" class="variablelist">
861
 
<colgroup>
 
854
<div class="variablelist"><table border="0">
862
855
<col align="left" valign="top">
863
 
<col>
864
 
</colgroup>
865
856
<tbody>
866
857
<tr>
867
858
<td><p><a name="G-REGEX-MATCH-ANCHORED:CAPS"></a><span class="term"><code class="literal">G_REGEX_MATCH_ANCHORED</code></span></p></td>
1008
999
to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval" title="g_regex_replace_eval ()"><code class="function">g_regex_replace_eval()</code></a>, and it should append the replacement to
1009
1000
<em class="parameter"><code>result</code></em>.
1010
1001
</p>
1011
 
<div class="variablelist"><table border="0" class="variablelist">
1012
 
<colgroup>
 
1002
<div class="variablelist"><table border="0">
1013
1003
<col align="left" valign="top">
1014
 
<col>
1015
 
</colgroup>
1016
1004
<tbody>
1017
1005
<tr>
1018
1006
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
1049
1037
Compiles the regular expression to an internal form, and does
1050
1038
the initial setup of the <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a> structure.
1051
1039
</p>
1052
 
<div class="variablelist"><table border="0" class="variablelist">
1053
 
<colgroup>
 
1040
<div class="variablelist"><table border="0">
1054
1041
<col align="left" valign="top">
1055
 
<col>
1056
 
</colgroup>
1057
1042
<tbody>
1058
1043
<tr>
1059
1044
<td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1088
1073
<p>
1089
1074
Increases reference count of <em class="parameter"><code>regex</code></em> by 1.
1090
1075
</p>
1091
 
<div class="variablelist"><table border="0" class="variablelist">
1092
 
<colgroup>
 
1076
<div class="variablelist"><table border="0">
1093
1077
<col align="left" valign="top">
1094
 
<col>
1095
 
</colgroup>
1096
1078
<tbody>
1097
1079
<tr>
1098
1080
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1115
1097
Decreases reference count of <em class="parameter"><code>regex</code></em> by 1. When reference count drops
1116
1098
to zero, it frees all the memory associated with the regex structure.
1117
1099
</p>
1118
 
<div class="variablelist"><table border="0" class="variablelist">
1119
 
<colgroup>
 
1100
<div class="variablelist"><table border="0">
1120
1101
<col align="left" valign="top">
1121
 
<col>
1122
 
</colgroup>
1123
1102
<tbody><tr>
1124
1103
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1125
1104
<td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GRegex" title="GRegex"><span class="type">GRegex</span></a>
1136
1115
Gets the pattern string associated with <em class="parameter"><code>regex</code></em>, i.e. a copy of
1137
1116
the string passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a>.
1138
1117
</p>
1139
 
<div class="variablelist"><table border="0" class="variablelist">
1140
 
<colgroup>
 
1118
<div class="variablelist"><table border="0">
1141
1119
<col align="left" valign="top">
1142
 
<col>
1143
 
</colgroup>
1144
1120
<tbody>
1145
1121
<tr>
1146
1122
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1164
1140
in the pattern, or 0 if the pattern does not contain
1165
1141
back references.
1166
1142
</p>
1167
 
<div class="variablelist"><table border="0" class="variablelist">
1168
 
<colgroup>
 
1143
<div class="variablelist"><table border="0">
1169
1144
<col align="left" valign="top">
1170
 
<col>
1171
 
</colgroup>
1172
1145
<tbody>
1173
1146
<tr>
1174
1147
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1190
1163
<p>
1191
1164
Returns the number of capturing subpatterns in the pattern.
1192
1165
</p>
1193
 
<div class="variablelist"><table border="0" class="variablelist">
1194
 
<colgroup>
 
1166
<div class="variablelist"><table border="0">
1195
1167
<col align="left" valign="top">
1196
 
<col>
1197
 
</colgroup>
1198
1168
<tbody>
1199
1169
<tr>
1200
1170
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1216
1186
<p>
1217
1187
Checks whether the pattern contains explicit CR or LF references.
1218
1188
</p>
1219
 
<div class="variablelist"><table border="0" class="variablelist">
1220
 
<colgroup>
 
1189
<div class="variablelist"><table border="0">
1221
1190
<col align="left" valign="top">
1222
 
<col>
1223
 
</colgroup>
1224
1191
<tbody>
1225
1192
<tr>
1226
1193
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1243
1210
<p>
1244
1211
Retrieves the number of the subexpression named <em class="parameter"><code>name</code></em>.
1245
1212
</p>
1246
 
<div class="variablelist"><table border="0" class="variablelist">
1247
 
<colgroup>
 
1213
<div class="variablelist"><table border="0">
1248
1214
<col align="left" valign="top">
1249
 
<col>
1250
 
</colgroup>
1251
1215
<tbody>
1252
1216
<tr>
1253
1217
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1274
1238
<p>
1275
1239
Returns the compile options that <em class="parameter"><code>regex</code></em> was created with.
1276
1240
</p>
1277
 
<div class="variablelist"><table border="0" class="variablelist">
1278
 
<colgroup>
 
1241
<div class="variablelist"><table border="0">
1279
1242
<col align="left" valign="top">
1280
 
<col>
1281
 
</colgroup>
1282
1243
<tbody>
1283
1244
<tr>
1284
1245
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1301
1262
<p>
1302
1263
Returns the match options that <em class="parameter"><code>regex</code></em> was created with.
1303
1264
</p>
1304
 
<div class="variablelist"><table border="0" class="variablelist">
1305
 
<colgroup>
 
1265
<div class="variablelist"><table border="0">
1306
1266
<col align="left" valign="top">
1307
 
<col>
1308
 
</colgroup>
1309
1267
<tbody>
1310
1268
<tr>
1311
1269
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1336
1294
in this case remember to specify the correct length of <em class="parameter"><code>string</code></em>
1337
1295
in <em class="parameter"><code>length</code></em>.
1338
1296
</p>
1339
 
<div class="variablelist"><table border="0" class="variablelist">
1340
 
<colgroup>
 
1297
<div class="variablelist"><table border="0">
1341
1298
<col align="left" valign="top">
1342
 
<col>
1343
 
</colgroup>
1344
1299
<tbody>
1345
1300
<tr>
1346
1301
<td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1372
1327
For completeness, <em class="parameter"><code>length</code></em> can be -1 for a nul-terminated string.
1373
1328
In this case the output string will be of course equal to <em class="parameter"><code>string</code></em>.
1374
1329
</p>
1375
 
<div class="variablelist"><table border="0" class="variablelist">
1376
 
<colgroup>
 
1330
<div class="variablelist"><table border="0">
1377
1331
<col align="left" valign="top">
1378
 
<col>
1379
 
</colgroup>
1380
1332
<tbody>
1381
1333
<tr>
1382
1334
<td><p><span class="term"><em class="parameter"><code>string</code></em> :</span></p></td>
1416
1368
once, it's more efficient to compile the pattern once with
1417
1369
<a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-new" title="g_regex_new ()"><code class="function">g_regex_new()</code></a> and then use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a>.
1418
1370
</p>
1419
 
<div class="variablelist"><table border="0" class="variablelist">
1420
 
<colgroup>
 
1371
<div class="variablelist"><table border="0">
1421
1372
<col align="left" valign="top">
1422
 
<col>
1423
 
</colgroup>
1424
1373
<tbody>
1425
1374
<tr>
1426
1375
<td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1495
1444
17
1496
1445
18
1497
1446
19</pre></td>
1498
 
        <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
1499
 
<span class="function">print_uppercase_words</span><span class="normal"> </span><span class="symbol">(</span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">string</span><span class="symbol">)</span>
1500
 
<span class="cbracket">{</span>
1501
 
<span class="normal">  </span><span class="comment">/* Print all uppercase-only words. */</span>
1502
 
<span class="normal">  </span><span class="usertype">GRegex</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">regex</span><span class="symbol">;</span>
1503
 
<span class="normal">  </span><span class="usertype">GMatchInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">match_info</span><span class="symbol">;</span>
1504
 
<span class="normal">   </span>
1505
 
<span class="normal">  regex </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"[A-Z]+"</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1506
 
<span class="normal">  </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-match">g_regex_match</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">,</span><span class="normal"> string</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">match_info</span><span class="symbol">);</span>
1507
 
<span class="normal">  </span><span class="keyword">while</span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches">g_match_info_matches</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">))</span>
1508
 
<span class="normal">    </span><span class="cbracket">{</span>
1509
 
<span class="normal">      </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">word </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">);</span>
1510
 
<span class="normal">      </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Found: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> word</span><span class="symbol">);</span>
1511
 
<span class="normal">      </span><span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">word</span><span class="symbol">);</span>
1512
 
<span class="normal">      </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-next">g_match_info_next</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1513
 
<span class="normal">    </span><span class="cbracket">}</span>
1514
 
<span class="normal">  </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-free">g_match_info_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">);</span>
1515
 
<span class="normal">  </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-unref">g_regex_unref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">);</span>
1516
 
<span class="cbracket">}</span></pre></td>
 
1447
        <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">static void</span>
 
1448
<span class="function">print_uppercase_words</span> <span class="gtkdoc opt">(</span><span class="gtkdoc kwb">const</span> gchar <span class="gtkdoc opt">*</span>string<span class="gtkdoc opt">)</span>
 
1449
<span class="gtkdoc opt">{</span>
 
1450
  <span class="comment">/* Print all uppercase-only words. */</span>
 
1451
  GRegex <span class="gtkdoc opt">*</span>regex<span class="gtkdoc opt">;</span>
 
1452
  GMatchInfo <span class="gtkdoc opt">*</span>match_info<span class="gtkdoc opt">;</span>
 
1453
   
 
1454
  regex <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;[A-Z]+&quot;</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
 
1455
  <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-match">g_regex_match</a></span> <span class="gtkdoc opt">(</span>regex<span class="gtkdoc opt">,</span> string<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">, &amp;</span>match_info<span class="gtkdoc opt">);</span>
 
1456
  <span class="keyword">while</span> <span class="gtkdoc opt">(</span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches">g_match_info_matches</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">))</span>
 
1457
    <span class="gtkdoc opt">{</span>
 
1458
      gchar <span class="gtkdoc opt">*</span>word <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
 
1459
      <span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Found: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> word<span class="gtkdoc opt">);</span>
 
1460
      <span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>word<span class="gtkdoc opt">);</span>
 
1461
      <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-next">g_match_info_next</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
 
1462
    <span class="gtkdoc opt">}</span>
 
1463
  <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-free">g_match_info_free</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">);</span>
 
1464
  <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-unref">g_regex_unref</a></span> <span class="gtkdoc opt">(</span>regex<span class="gtkdoc opt">);</span>
 
1465
<span class="gtkdoc opt">}</span></pre></td>
1517
1466
      </tr>
1518
1467
    </tbody>
1519
1468
  </table>
1526
1475
you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1527
1476
freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1528
1477
</p>
1529
 
<div class="variablelist"><table border="0" class="variablelist">
1530
 
<colgroup>
 
1478
<div class="variablelist"><table border="0">
1531
1479
<col align="left" valign="top">
1532
 
<col>
1533
 
</colgroup>
1534
1480
<tbody>
1535
1481
<tr>
1536
1482
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1628
1574
23
1629
1575
24
1630
1576
25</pre></td>
1631
 
        <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
1632
 
<span class="function">print_uppercase_words</span><span class="normal"> </span><span class="symbol">(</span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">string</span><span class="symbol">)</span>
1633
 
<span class="cbracket">{</span>
1634
 
<span class="normal">  </span><span class="comment">/* Print all uppercase-only words. */</span>
1635
 
<span class="normal">  </span><span class="usertype">GRegex</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">regex</span><span class="symbol">;</span>
1636
 
<span class="normal">  </span><span class="usertype">GMatchInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">match_info</span><span class="symbol">;</span>
1637
 
<span class="normal">  </span><span class="usertype">GError</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">error </span><span class="symbol">=</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">;</span>
1638
 
<span class="normal">   </span>
1639
 
<span class="normal">  regex </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"[A-Z]+"</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
1640
 
<span class="normal">  </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-match-full">g_regex_match_full</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">,</span><span class="normal"> string</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">-</span><span class="number">1</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">error</span><span class="symbol">);</span>
1641
 
<span class="normal">  </span><span class="keyword">while</span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches">g_match_info_matches</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">))</span>
1642
 
<span class="normal">    </span><span class="cbracket">{</span>
1643
 
<span class="normal">      </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">word </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">);</span>
1644
 
<span class="normal">      </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Found: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> word</span><span class="symbol">);</span>
1645
 
<span class="normal">      </span><span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">word</span><span class="symbol">);</span>
1646
 
<span class="normal">      </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-next">g_match_info_next</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">error</span><span class="symbol">);</span>
1647
 
<span class="normal">    </span><span class="cbracket">}</span>
1648
 
<span class="normal">  </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-free">g_match_info_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match_info</span><span class="symbol">);</span>
1649
 
<span class="normal">  </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-unref">g_regex_unref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">regex</span><span class="symbol">);</span>
1650
 
<span class="normal">  </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">error </span><span class="symbol">!=</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">)</span>
1651
 
<span class="normal">    </span><span class="cbracket">{</span>
1652
 
<span class="normal">      </span><span class="function"><a href="glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Error while matching: %s</span><span class="specialchar">\n</span><span class="string">"</span><span class="symbol">,</span><span class="normal"> error</span><span class="symbol">-&gt;</span><span class="normal">message</span><span class="symbol">);</span>
1653
 
<span class="normal">      </span><span class="function"><a href="glib-Error-Reporting.html#g-error-free">g_error_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">error</span><span class="symbol">);</span>
1654
 
<span class="normal">    </span><span class="cbracket">}</span>
1655
 
<span class="cbracket">}</span></pre></td>
 
1577
        <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">static void</span>
 
1578
<span class="function">print_uppercase_words</span> <span class="gtkdoc opt">(</span><span class="gtkdoc kwb">const</span> gchar <span class="gtkdoc opt">*</span>string<span class="gtkdoc opt">)</span>
 
1579
<span class="gtkdoc opt">{</span>
 
1580
  <span class="comment">/* Print all uppercase-only words. */</span>
 
1581
  GRegex <span class="gtkdoc opt">*</span>regex<span class="gtkdoc opt">;</span>
 
1582
  GMatchInfo <span class="gtkdoc opt">*</span>match_info<span class="gtkdoc opt">;</span>
 
1583
  GError <span class="gtkdoc opt">*</span>error <span class="gtkdoc opt">=</span> NULL<span class="gtkdoc opt">;</span>
 
1584
   
 
1585
  regex <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;[A-Z]+&quot;</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
 
1586
  <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-match-full">g_regex_match_full</a></span> <span class="gtkdoc opt">(</span>regex<span class="gtkdoc opt">,</span> string<span class="gtkdoc opt">, -</span><span class="number">1</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">, &amp;</span>match_info<span class="gtkdoc opt">, &amp;</span>error<span class="gtkdoc opt">);</span>
 
1587
  <span class="keyword">while</span> <span class="gtkdoc opt">(</span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-matches">g_match_info_matches</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">))</span>
 
1588
    <span class="gtkdoc opt">{</span>
 
1589
      gchar <span class="gtkdoc opt">*</span>word <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
 
1590
      <span class="function"><a href="glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Found: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> word<span class="gtkdoc opt">);</span>
 
1591
      <span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>word<span class="gtkdoc opt">);</span>
 
1592
      <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-next">g_match_info_next</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">, &amp;</span>error<span class="gtkdoc opt">);</span>
 
1593
    <span class="gtkdoc opt">}</span>
 
1594
  <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-free">g_match_info_free</a></span> <span class="gtkdoc opt">(</span>match_info<span class="gtkdoc opt">);</span>
 
1595
  <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-unref">g_regex_unref</a></span> <span class="gtkdoc opt">(</span>regex<span class="gtkdoc opt">);</span>
 
1596
  <span class="keyword">if</span> <span class="gtkdoc opt">(</span>error <span class="gtkdoc opt">!=</span> NULL<span class="gtkdoc opt">)</span>
 
1597
    <span class="gtkdoc opt">{</span>
 
1598
      <span class="function"><a href="glib-Warnings-and-Assertions.html#g-printerr">g_printerr</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;Error while matching: %s</span><span class="gtkdoc esc">\n</span><span class="string">&quot;</span><span class="gtkdoc opt">,</span> error<span class="gtkdoc opt">-&gt;</span>message<span class="gtkdoc opt">);</span>
 
1599
      <span class="function"><a href="glib-Error-Reporting.html#g-error-free">g_error_free</a></span> <span class="gtkdoc opt">(</span>error<span class="gtkdoc opt">);</span>
 
1600
    <span class="gtkdoc opt">}</span>
 
1601
<span class="gtkdoc opt">}</span></pre></td>
1656
1602
      </tr>
1657
1603
    </tbody>
1658
1604
  </table>
1660
1606
 
1661
1607
<p>
1662
1608
</p>
1663
 
<div class="variablelist"><table border="0" class="variablelist">
1664
 
<colgroup>
 
1609
<div class="variablelist"><table border="0">
1665
1610
<col align="left" valign="top">
1666
 
<col>
1667
 
</colgroup>
1668
1611
<tbody>
1669
1612
<tr>
1670
1613
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1732
1675
you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1733
1676
freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1734
1677
</p>
1735
 
<div class="variablelist"><table border="0" class="variablelist">
1736
 
<colgroup>
 
1678
<div class="variablelist"><table border="0">
1737
1679
<col align="left" valign="top">
1738
 
<col>
1739
 
</colgroup>
1740
1680
<tbody>
1741
1681
<tr>
1742
1682
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1820
1760
you use any <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> method (except <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-free" title="g_match_info_free ()"><code class="function">g_match_info_free()</code></a>) after
1821
1761
freeing or modifying <em class="parameter"><code>string</code></em> then the behaviour is undefined.
1822
1762
</p>
1823
 
<div class="variablelist"><table border="0" class="variablelist">
1824
 
<colgroup>
 
1763
<div class="variablelist"><table border="0">
1825
1764
<col align="left" valign="top">
1826
 
<col>
1827
 
</colgroup>
1828
1765
<tbody>
1829
1766
<tr>
1830
1767
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
1907
1844
characters. For example splitting "ab c" using as a separator
1908
1845
"\s*", you will get "a", "b" and "c".
1909
1846
</p>
1910
 
<div class="variablelist"><table border="0" class="variablelist">
1911
 
<colgroup>
 
1847
<div class="variablelist"><table border="0">
1912
1848
<col align="left" valign="top">
1913
 
<col>
1914
 
</colgroup>
1915
1849
<tbody>
1916
1850
<tr>
1917
1851
<td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1966
1900
For example splitting "ab c" using as a separator "\s*", you will get
1967
1901
"a", "b" and "c".
1968
1902
</p>
1969
 
<div class="variablelist"><table border="0" class="variablelist">
1970
 
<colgroup>
 
1903
<div class="variablelist"><table border="0">
1971
1904
<col align="left" valign="top">
1972
 
<col>
1973
 
</colgroup>
1974
1905
<tbody>
1975
1906
<tr>
1976
1907
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
2030
1961
string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern
2031
1962
that begins with any kind of lookbehind assertion, such as "\b".
2032
1963
</p>
2033
 
<div class="variablelist"><table border="0" class="variablelist">
2034
 
<colgroup>
 
1964
<div class="variablelist"><table border="0">
2035
1965
<col align="left" valign="top">
2036
 
<col>
2037
 
</colgroup>
2038
1966
<tbody>
2039
1967
<tr>
2040
1968
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
2099
2027
</p>
2100
2028
<p>
2101
2029
</p>
2102
 
<div class="variablelist"><table border="0" class="variablelist">
2103
 
<colgroup>
 
2030
<div class="variablelist"><table border="0">
2104
2031
<col align="left" valign="top">
2105
 
<col>
2106
 
</colgroup>
2107
2032
<tbody>
2108
2033
<tr>
2109
2034
<td><p><span class="term">\l</span></p></td>
2142
2067
string and setting <a class="link" href="glib-Perl-compatible-regular-expressions.html#G-REGEX-MATCH-NOTBOL:CAPS"><span class="type">G_REGEX_MATCH_NOTBOL</span></a> in the case of a pattern that
2143
2068
begins with any kind of lookbehind assertion, such as "\b".
2144
2069
</p>
2145
 
<div class="variablelist"><table border="0" class="variablelist">
2146
 
<colgroup>
 
2070
<div class="variablelist"><table border="0">
2147
2071
<col align="left" valign="top">
2148
 
<col>
2149
 
</colgroup>
2150
2072
<tbody>
2151
2073
<tr>
2152
2074
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
2206
2128
case of a pattern that begins with any kind of lookbehind
2207
2129
assertion, such as "\b".
2208
2130
</p>
2209
 
<div class="variablelist"><table border="0" class="variablelist">
2210
 
<colgroup>
 
2131
<div class="variablelist"><table border="0">
2211
2132
<col align="left" valign="top">
2212
 
<col>
2213
 
</colgroup>
2214
2133
<tbody>
2215
2134
<tr>
2216
2135
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
2311
2230
32
2312
2231
33
2313
2232
34</pre></td>
2314
 
        <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> <a href="glib-Basic-Types.html#gboolean">gboolean</a></span>
2315
 
<span class="function">eval_cb</span><span class="normal"> </span><span class="symbol">(</span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">GMatchInfo</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">info</span><span class="symbol">,</span>
2316
 
<span class="normal">         </span><span class="usertype">GString</span><span class="normal">          </span><span class="symbol">*</span><span class="normal">res</span><span class="symbol">,</span>
2317
 
<span class="normal">         </span><span class="usertype">gpointer</span><span class="normal">          data</span><span class="symbol">)</span>
2318
 
<span class="cbracket">{</span>
2319
 
<span class="normal">  </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">match</span><span class="symbol">;</span>
2320
 
<span class="normal">  </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">r</span><span class="symbol">;</span>
2321
 
 
2322
 
<span class="normal">   match </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">info</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">);</span>
2323
 
<span class="normal">   r </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Hash-Tables.html#g-hash-table-lookup">g_hash_table_lookup</a></span><span class="normal"> </span><span class="symbol">((</span><span class="normal"><a href="glib-Hash-Tables.html#GHashTable">GHashTable</a> </span><span class="symbol">*)</span><span class="normal">data</span><span class="symbol">,</span><span class="normal"> match</span><span class="symbol">);</span>
2324
 
<span class="normal">   </span><span class="function"><a href="glib-Strings.html#g-string-append">g_string_append</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">res</span><span class="symbol">,</span><span class="normal"> r</span><span class="symbol">);</span>
2325
 
<span class="normal">   </span><span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">match</span><span class="symbol">);</span>
2326
 
 
2327
 
<span class="normal">   </span><span class="keyword">return</span><span class="normal"> <a href="glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">;</span>
2328
 
<span class="cbracket">}</span>
 
2233
        <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">static</span> gboolean
 
2234
<span class="function">eval_cb</span> <span class="gtkdoc opt">(</span><span class="gtkdoc kwb">const</span> GMatchInfo <span class="gtkdoc opt">*</span>info<span class="gtkdoc opt">,</span>
 
2235
         GString          <span class="gtkdoc opt">*</span>res<span class="gtkdoc opt">,</span>
 
2236
         gpointer          data<span class="gtkdoc opt">)</span>
 
2237
<span class="gtkdoc opt">{</span>
 
2238
  gchar <span class="gtkdoc opt">*</span>match<span class="gtkdoc opt">;</span>
 
2239
  gchar <span class="gtkdoc opt">*</span>r<span class="gtkdoc opt">;</span>
 
2240
 
 
2241
   match <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-match-info-fetch">g_match_info_fetch</a></span> <span class="gtkdoc opt">(</span>info<span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">);</span>
 
2242
   r <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-lookup">g_hash_table_lookup</a></span> <span class="gtkdoc opt">((</span>GHashTable <span class="gtkdoc opt">*)</span>data<span class="gtkdoc opt">,</span> match<span class="gtkdoc opt">);</span>
 
2243
   <span class="function"><a href="glib-Strings.html#g-string-append">g_string_append</a></span> <span class="gtkdoc opt">(</span>res<span class="gtkdoc opt">,</span> r<span class="gtkdoc opt">);</span>
 
2244
   <span class="function"><a href="glib-Memory-Allocation.html#g-free">g_free</a></span> <span class="gtkdoc opt">(</span>match<span class="gtkdoc opt">);</span>
 
2245
 
 
2246
   <span class="keyword">return</span> FALSE<span class="gtkdoc opt">;</span>
 
2247
<span class="gtkdoc opt">}</span>
2329
2248
 
2330
2249
<span class="comment">/* ... */</span>
2331
2250
 
2332
 
<span class="usertype">GRegex</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">reg</span><span class="symbol">;</span>
2333
 
<span class="usertype">GHashTable</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">h</span><span class="symbol">;</span>
2334
 
<span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">res</span><span class="symbol">;</span>
2335
 
 
2336
 
<span class="normal">h </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Hash-Tables.html#g-hash-table-new">g_hash_table_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal"><a href="glib-Hash-Tables.html#g-str-hash">g_str_hash</a></span><span class="symbol">,</span><span class="normal"> <a href="glib-Hash-Tables.html#g-str-equal">g_str_equal</a></span><span class="symbol">);</span>
2337
 
 
2338
 
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"1"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"ONE"</span><span class="symbol">);</span>
2339
 
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"2"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"TWO"</span><span class="symbol">);</span>
2340
 
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"3"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"THREE"</span><span class="symbol">);</span>
2341
 
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"4"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"FOUR"</span><span class="symbol">);</span>
2342
 
 
2343
 
<span class="normal">reg </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"1|2|3|4"</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
2344
 
<span class="normal">res </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval">g_regex_replace_eval</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">reg</span><span class="symbol">,</span><span class="normal"> text</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">-</span><span class="number">1</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> eval_cb</span><span class="symbol">,</span><span class="normal"> h</span><span class="symbol">,</span><span class="normal"> <a href="glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
2345
 
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-destroy">g_hash_table_destroy</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">h</span><span class="symbol">);</span>
 
2251
GRegex <span class="gtkdoc opt">*</span>reg<span class="gtkdoc opt">;</span>
 
2252
GHashTable <span class="gtkdoc opt">*</span>h<span class="gtkdoc opt">;</span>
 
2253
gchar <span class="gtkdoc opt">*</span>res<span class="gtkdoc opt">;</span>
 
2254
 
 
2255
h <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Hash-Tables.html#g-hash-table-new">g_hash_table_new</a></span> <span class="gtkdoc opt">(</span>g_str_hash<span class="gtkdoc opt">,</span> g_str_equal<span class="gtkdoc opt">);</span>
 
2256
 
 
2257
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span> <span class="gtkdoc opt">(</span>h<span class="gtkdoc opt">,</span> <span class="string">&quot;1&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;ONE&quot;</span><span class="gtkdoc opt">);</span>
 
2258
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span> <span class="gtkdoc opt">(</span>h<span class="gtkdoc opt">,</span> <span class="string">&quot;2&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;TWO&quot;</span><span class="gtkdoc opt">);</span>
 
2259
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span> <span class="gtkdoc opt">(</span>h<span class="gtkdoc opt">,</span> <span class="string">&quot;3&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;THREE&quot;</span><span class="gtkdoc opt">);</span>
 
2260
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-insert">g_hash_table_insert</a></span> <span class="gtkdoc opt">(</span>h<span class="gtkdoc opt">,</span> <span class="string">&quot;4&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;FOUR&quot;</span><span class="gtkdoc opt">);</span>
 
2261
 
 
2262
reg <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-new">g_regex_new</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;1|2|3|4&quot;</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
 
2263
res <span class="gtkdoc opt">=</span> <span class="function"><a href="glib-Perl-compatible-regular-expressions.html#g-regex-replace-eval">g_regex_replace_eval</a></span> <span class="gtkdoc opt">(</span>reg<span class="gtkdoc opt">,</span> text<span class="gtkdoc opt">, -</span><span class="number">1</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> <span class="number">0</span><span class="gtkdoc opt">,</span> eval_cb<span class="gtkdoc opt">,</span> h<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
 
2264
<span class="function"><a href="glib-Hash-Tables.html#g-hash-table-destroy">g_hash_table_destroy</a></span> <span class="gtkdoc opt">(</span>h<span class="gtkdoc opt">);</span>
2346
2265
 
2347
2266
<span class="comment">/* ... */</span></pre></td>
2348
2267
      </tr>
2352
2271
 
2353
2272
<p>
2354
2273
</p>
2355
 
<div class="variablelist"><table border="0" class="variablelist">
2356
 
<colgroup>
 
2274
<div class="variablelist"><table border="0">
2357
2275
<col align="left" valign="top">
2358
 
<col>
2359
 
</colgroup>
2360
2276
<tbody>
2361
2277
<tr>
2362
2278
<td><p><span class="term"><em class="parameter"><code>regex</code></em> :</span></p></td>
2418
2334
about actual match, but '\0\1' (whole match followed by first
2419
2335
subpattern) requires valid <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a> object.
2420
2336
</p>
2421
 
<div class="variablelist"><table border="0" class="variablelist">
2422
 
<colgroup>
 
2337
<div class="variablelist"><table border="0">
2423
2338
<col align="left" valign="top">
2424
 
<col>
2425
 
</colgroup>
2426
2339
<tbody>
2427
2340
<tr>
2428
2341
<td><p><span class="term"><em class="parameter"><code>replacement</code></em> :</span></p></td>
2460
2373
and must not be freed. Use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-ref" title="g_regex_ref ()"><code class="function">g_regex_ref()</code></a> if you need to keep it
2461
2374
after you free <em class="parameter"><code>match_info</code></em> object.
2462
2375
</p>
2463
 
<div class="variablelist"><table border="0" class="variablelist">
2464
 
<colgroup>
 
2376
<div class="variablelist"><table border="0">
2465
2377
<col align="left" valign="top">
2466
 
<col>
2467
 
</colgroup>
2468
2378
<tbody>
2469
2379
<tr>
2470
2380
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2490
2400
string passed to <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-match" title="g_regex_match ()"><code class="function">g_regex_match()</code></a> or <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-replace" title="g_regex_replace ()"><code class="function">g_regex_replace()</code></a> so
2491
2401
you may not free it before calling this function.
2492
2402
</p>
2493
 
<div class="variablelist"><table border="0" class="variablelist">
2494
 
<colgroup>
 
2403
<div class="variablelist"><table border="0">
2495
2404
<col align="left" valign="top">
2496
 
<col>
2497
 
</colgroup>
2498
2405
<tbody>
2499
2406
<tr>
2500
2407
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2517
2424
<p>
2518
2425
Increases reference count of <em class="parameter"><code>match_info</code></em> by 1.
2519
2426
</p>
2520
 
<div class="variablelist"><table border="0" class="variablelist">
2521
 
<colgroup>
 
2427
<div class="variablelist"><table border="0">
2522
2428
<col align="left" valign="top">
2523
 
<col>
2524
 
</colgroup>
2525
2429
<tbody>
2526
2430
<tr>
2527
2431
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2544
2448
Decreases reference count of <em class="parameter"><code>match_info</code></em> by 1. When reference count drops
2545
2449
to zero, it frees all the memory associated with the match_info structure.
2546
2450
</p>
2547
 
<div class="variablelist"><table border="0" class="variablelist">
2548
 
<colgroup>
 
2451
<div class="variablelist"><table border="0">
2549
2452
<col align="left" valign="top">
2550
 
<col>
2551
 
</colgroup>
2552
2453
<tbody><tr>
2553
2454
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2554
2455
<td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>
2565
2466
If <em class="parameter"><code>match_info</code></em> is not <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>, calls <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-match-info-unref" title="g_match_info_unref ()"><code class="function">g_match_info_unref()</code></a>; otherwise does
2566
2467
nothing.
2567
2468
</p>
2568
 
<div class="variablelist"><table border="0" class="variablelist">
2569
 
<colgroup>
 
2469
<div class="variablelist"><table border="0">
2570
2470
<col align="left" valign="top">
2571
 
<col>
2572
 
</colgroup>
2573
2471
<tbody><tr>
2574
2472
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2575
2473
<td>a <a class="link" href="glib-Perl-compatible-regular-expressions.html#GMatchInfo" title="GMatchInfo"><span class="type">GMatchInfo</span></a>, or <a class="link" href="glib-Standard-Macros.html#NULL:CAPS" title="NULL"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
2585
2483
<p>
2586
2484
Returns whether the previous match operation succeeded.
2587
2485
</p>
2588
 
<div class="variablelist"><table border="0" class="variablelist">
2589
 
<colgroup>
 
2486
<div class="variablelist"><table border="0">
2590
2487
<col align="left" valign="top">
2591
 
<col>
2592
 
</colgroup>
2593
2488
<tbody>
2594
2489
<tr>
2595
2490
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2619
2514
The match is done on the string passed to the match function, so you
2620
2515
cannot free it before calling this function.
2621
2516
</p>
2622
 
<div class="variablelist"><table border="0" class="variablelist">
2623
 
<colgroup>
 
2517
<div class="variablelist"><table border="0">
2624
2518
<col align="left" valign="top">
2625
 
<col>
2626
 
</colgroup>
2627
2519
<tbody>
2628
2520
<tr>
2629
2521
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2657
2549
count is not that of the number of capturing parentheses but that of
2658
2550
the number of matched substrings.
2659
2551
</p>
2660
 
<div class="variablelist"><table border="0" class="variablelist">
2661
 
<colgroup>
 
2552
<div class="variablelist"><table border="0">
2662
2553
<col align="left" valign="top">
2663
 
<col>
2664
 
</colgroup>
2665
2554
<tbody>
2666
2555
<tr>
2667
2556
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2726
2615
for a pattern that does not conform to the restrictions, matching
2727
2616
functions return an error.
2728
2617
</p>
2729
 
<div class="variablelist"><table border="0" class="variablelist">
2730
 
<colgroup>
 
2618
<div class="variablelist"><table border="0">
2731
2619
<col align="left" valign="top">
2732
 
<col>
2733
 
</colgroup>
2734
2620
<tbody>
2735
2621
<tr>
2736
2622
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2773
2659
Use <a class="link" href="glib-Perl-compatible-regular-expressions.html#g-regex-check-replacement" title="g_regex_check_replacement ()"><code class="function">g_regex_check_replacement()</code></a> to find out whether <em class="parameter"><code>string_to_expand</code></em>
2774
2660
contains references.
2775
2661
</p>
2776
 
<div class="variablelist"><table border="0" class="variablelist">
2777
 
<colgroup>
 
2662
<div class="variablelist"><table border="0">
2778
2663
<col align="left" valign="top">
2779
 
<col>
2780
 
</colgroup>
2781
2664
<tbody>
2782
2665
<tr>
2783
2666
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2827
2710
The string is fetched from the string passed to the match function,
2828
2711
so you cannot call this function after freeing the string.
2829
2712
</p>
2830
 
<div class="variablelist"><table border="0" class="variablelist">
2831
 
<colgroup>
 
2713
<div class="variablelist"><table border="0">
2832
2714
<col align="left" valign="top">
2833
 
<col>
2834
 
</colgroup>
2835
2715
<tbody>
2836
2716
<tr>
2837
2717
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2876
2756
substring. Substrings are matched in reverse order of length, so
2877
2757
0 is the longest match.
2878
2758
</p>
2879
 
<div class="variablelist"><table border="0" class="variablelist">
2880
 
<colgroup>
 
2759
<div class="variablelist"><table border="0">
2881
2760
<col align="left" valign="top">
2882
 
<col>
2883
 
</colgroup>
2884
2761
<tbody>
2885
2762
<tr>
2886
2763
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2931
2808
The string is fetched from the string passed to the match function,
2932
2809
so you cannot call this function after freeing the string.
2933
2810
</p>
2934
 
<div class="variablelist"><table border="0" class="variablelist">
2935
 
<colgroup>
 
2811
<div class="variablelist"><table border="0">
2936
2812
<col align="left" valign="top">
2937
 
<col>
2938
 
</colgroup>
2939
2813
<tbody>
2940
2814
<tr>
2941
2815
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
2971
2845
(e.g. sub pattern "X", matching "b" against "(?P&lt;X&gt;a)?b")
2972
2846
then <em class="parameter"><code>start_pos</code></em> and <em class="parameter"><code>end_pos</code></em> are set to -1 and <a class="link" href="glib-Standard-Macros.html#TRUE:CAPS" title="TRUE"><code class="literal">TRUE</code></a> is returned.
2973
2847
</p>
2974
 
<div class="variablelist"><table border="0" class="variablelist">
2975
 
<colgroup>
 
2848
<div class="variablelist"><table border="0">
2976
2849
<col align="left" valign="top">
2977
 
<col>
2978
 
</colgroup>
2979
2850
<tbody>
2980
2851
<tr>
2981
2852
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
3034
2905
The strings are fetched from the string passed to the match function,
3035
2906
so you cannot call this function after freeing the string.
3036
2907
</p>
3037
 
<div class="variablelist"><table border="0" class="variablelist">
3038
 
<colgroup>
 
2908
<div class="variablelist"><table border="0">
3039
2909
<col align="left" valign="top">
3040
 
<col>
3041
 
</colgroup>
3042
2910
<tbody>
3043
2911
<tr>
3044
2912
<td><p><span class="term"><em class="parameter"><code>match_info</code></em> :</span></p></td>
3063
2931
</div>
3064
2932
<div class="footer">
3065
2933
<hr>
3066
 
          Generated by GTK-Doc V1.18</div>
 
2934
          Generated by GTK-Doc V1.18.1</div>
3067
2935
</body>
3068
2936
</html>
 
 
b'\\ No newline at end of file'