Lines Matching refs:m
32 std::cmatch m; in main() local
34 assert(std::regex_match(s, m, std::regex("a"))); in main()
35 assert(m.size() == 1); in main()
36 assert(!m.empty()); in main()
37 assert(!m.prefix().matched); in main()
38 assert(m.prefix().first == s); in main()
39 assert(m.prefix().second == m[0].first); in main()
40 assert(!m.suffix().matched); in main()
41 assert(m.suffix().first == m[0].second); in main()
42 assert(m.suffix().second == s+1); in main()
43 assert(m.length(0) == 1); in main()
44 assert(m.position(0) == 0); in main()
45 assert(m.str(0) == "a"); in main()
48 std::cmatch m; in main() local
50 assert(std::regex_match(s, m, std::regex("ab"))); in main()
51 assert(m.size() == 1); in main()
52 assert(!m.prefix().matched); in main()
53 assert(m.prefix().first == s); in main()
54 assert(m.prefix().second == m[0].first); in main()
55 assert(!m.suffix().matched); in main()
56 assert(m.suffix().first == m[0].second); in main()
57 assert(m.suffix().second == s+2); in main()
58 assert(m.length(0) == 2); in main()
59 assert(m.position(0) == 0); in main()
60 assert(m.str(0) == "ab"); in main()
63 std::cmatch m; in main() local
65 assert(!std::regex_match(s, m, std::regex("ba"))); in main()
66 assert(m.size() == 0); in main()
67 assert(m.empty()); in main()
70 std::cmatch m; in main() local
72 assert(!std::regex_match(s, m, std::regex("ab"))); in main()
73 assert(m.size() == 0); in main()
76 std::cmatch m; in main() local
78 assert(!std::regex_match(s, m, std::regex("ab"), in main()
80 assert(m.size() == 0); in main()
83 std::cmatch m; in main() local
85 assert(!std::regex_match(s, m, std::regex("bc"))); in main()
86 assert(m.size() == 0); in main()
89 std::cmatch m; in main() local
91 assert(std::regex_match(s, m, std::regex("ab*c"))); in main()
92 assert(m.size() == 1); in main()
93 assert(!m.prefix().matched); in main()
94 assert(m.prefix().first == s); in main()
95 assert(m.prefix().second == m[0].first); in main()
96 assert(!m.suffix().matched); in main()
97 assert(m.suffix().first == m[0].second); in main()
98 assert(m.suffix().second == s+4); in main()
99 assert(m.length(0) == 4); in main()
100 assert(m.position(0) == 0); in main()
101 assert(m.str(0) == s); in main()
104 std::cmatch m; in main() local
106 assert(std::regex_match(s, m, std::regex("(ab)*c"))); in main()
107 assert(m.size() == 2); in main()
108 assert(!m.prefix().matched); in main()
109 assert(m.prefix().first == s); in main()
110 assert(m.prefix().second == m[0].first); in main()
111 assert(!m.suffix().matched); in main()
112 assert(m.suffix().first == m[0].second); in main()
113 assert(m.suffix().second == s+5); in main()
114 assert(m.length(0) == 5); in main()
115 assert(m.position(0) == 0); in main()
116 assert(m.str(0) == s); in main()
117 assert(m.length(1) == 2); in main()
118 assert(m.position(1) == 2); in main()
119 assert(m.str(1) == "ab"); in main()
122 std::cmatch m; in main() local
124 assert(!std::regex_match(s, m, std::regex("cd((e)fg)hi"))); in main()
125 assert(m.size() == 0); in main()
128 std::cmatch m; in main() local
130 assert(std::regex_match(s, m, std::regex("^abc"))); in main()
131 assert(m.size() == 1); in main()
132 assert(!m.prefix().matched); in main()
133 assert(m.prefix().first == s); in main()
134 assert(m.prefix().second == m[0].first); in main()
135 assert(!m.suffix().matched); in main()
136 assert(m.suffix().first == m[0].second); in main()
137 assert(m.suffix().second == s+3); in main()
138 assert(m.length(0) == 3); in main()
139 assert(m.position(0) == 0); in main()
140 assert(m.str(0) == s); in main()
143 std::cmatch m; in main() local
145 assert(!std::regex_match(s, m, std::regex("^abc"))); in main()
146 assert(m.size() == 0); in main()
149 std::cmatch m; in main() local
151 assert(!std::regex_match(s, m, std::regex("^abc"))); in main()
152 assert(m.size() == 0); in main()
155 std::cmatch m; in main() local
157 assert(std::regex_match(s, m, std::regex("abc$"))); in main()
158 assert(m.size() == 1); in main()
159 assert(!m.prefix().matched); in main()
160 assert(m.prefix().first == s); in main()
161 assert(m.prefix().second == m[0].first); in main()
162 assert(!m.suffix().matched); in main()
163 assert(m.suffix().first == m[0].second); in main()
164 assert(m.suffix().second == s+3); in main()
165 assert(m.length(0) == 3); in main()
166 assert(m.position(0) == 0); in main()
167 assert(m.str(0) == s); in main()
170 std::cmatch m; in main() local
172 assert(!std::regex_match(s, m, std::regex("abc$"))); in main()
173 assert(m.size() == 0); in main()
176 std::cmatch m; in main() local
178 assert(!std::regex_match(s, m, std::regex("abc$"))); in main()
179 assert(m.size() == 0); in main()
182 std::cmatch m; in main() local
184 assert(std::regex_match(s, m, std::regex("a.c"))); in main()
185 assert(m.size() == 1); in main()
186 assert(!m.prefix().matched); in main()
187 assert(m.prefix().first == s); in main()
188 assert(m.prefix().second == m[0].first); in main()
189 assert(!m.suffix().matched); in main()
190 assert(m.suffix().first == m[0].second); in main()
191 assert(m.suffix().second == s+3); in main()
192 assert(m.length(0) == 3); in main()
193 assert(m.position(0) == 0); in main()
194 assert(m.str(0) == s); in main()
197 std::cmatch m; in main() local
199 assert(std::regex_match(s, m, std::regex("a.c"))); in main()
200 assert(m.size() == 1); in main()
201 assert(!m.prefix().matched); in main()
202 assert(m.prefix().first == s); in main()
203 assert(m.prefix().second == m[0].first); in main()
204 assert(!m.suffix().matched); in main()
205 assert(m.suffix().first == m[0].second); in main()
206 assert(m.suffix().second == s+3); in main()
207 assert(m.length(0) == 3); in main()
208 assert(m.position(0) == 0); in main()
209 assert(m.str(0) == s); in main()
212 std::cmatch m; in main() local
214 assert(std::regex_match(s, m, std::regex("a.c"))); in main()
215 assert(m.size() == 1); in main()
216 assert(!m.prefix().matched); in main()
217 assert(m.prefix().first == s); in main()
218 assert(m.prefix().second == m[0].first); in main()
219 assert(!m.suffix().matched); in main()
220 assert(m.suffix().first == m[0].second); in main()
221 assert(m.suffix().second == s+3); in main()
222 assert(m.length(0) == 3); in main()
223 assert(m.position(0) == 0); in main()
224 assert(m.str(0) == s); in main()
227 std::cmatch m; in main() local
229 assert(std::regex_match(s, m, std::regex("(.*).*"))); in main()
230 assert(m.size() == 2); in main()
231 assert(!m.prefix().matched); in main()
232 assert(m.prefix().first == s); in main()
233 assert(m.prefix().second == m[0].first); in main()
234 assert(!m.suffix().matched); in main()
235 assert(m.suffix().first == m[0].second); in main()
236 assert(m.suffix().second == s+6); in main()
237 assert(m.length(0) == 6); in main()
238 assert(m.position(0) == 0); in main()
239 assert(m.str(0) == s); in main()
240 assert(m.length(1) == 6); in main()
241 assert(m.position(1) == 0); in main()
242 assert(m.str(1) == s); in main()
245 std::cmatch m; in main() local
247 assert(!std::regex_match(s, m, std::regex("(a*)*"))); in main()
248 assert(m.size() == 0); in main()
251 std::cmatch m; in main() local
253 assert(!std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
254 assert(m.size() == 0); in main()
257 std::cmatch m; in main() local
259 assert(std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
260 assert(m.size() == 1); in main()
261 assert(!m.prefix().matched); in main()
262 assert(m.prefix().first == s); in main()
263 assert(m.prefix().second == m[0].first); in main()
264 assert(!m.suffix().matched); in main()
265 assert(m.suffix().first == m[0].second); in main()
266 assert(m.suffix().second == m[0].second); in main()
267 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
268 assert(m.position(0) == 0); in main()
269 assert(m.str(0) == s); in main()
272 std::cmatch m; in main() local
274 assert(std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
275 assert(m.size() == 1); in main()
276 assert(!m.prefix().matched); in main()
277 assert(m.prefix().first == s); in main()
278 assert(m.prefix().second == m[0].first); in main()
279 assert(!m.suffix().matched); in main()
280 assert(m.suffix().first == m[0].second); in main()
281 assert(m.suffix().second == m[0].second); in main()
282 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
283 assert(m.position(0) == 0); in main()
284 assert(m.str(0) == s); in main()
287 std::cmatch m; in main() local
289 assert(std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
290 assert(m.size() == 1); in main()
291 assert(!m.prefix().matched); in main()
292 assert(m.prefix().first == s); in main()
293 assert(m.prefix().second == m[0].first); in main()
294 assert(!m.suffix().matched); in main()
295 assert(m.suffix().first == m[0].second); in main()
296 assert(m.suffix().second == m[0].second); in main()
297 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
298 assert(m.position(0) == 0); in main()
299 assert(m.str(0) == s); in main()
302 std::cmatch m; in main() local
304 assert(!std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
305 assert(m.size() == 0); in main()
308 std::cmatch m; in main() local
310 assert(!std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
311 assert(m.size() == 0); in main()
314 std::cmatch m; in main() local
316 assert(!std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
317 assert(m.size() == 0); in main()
320 std::cmatch m; in main() local
322 assert(std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
323 assert(m.size() == 1); in main()
324 assert(!m.prefix().matched); in main()
325 assert(m.prefix().first == s); in main()
326 assert(m.prefix().second == m[0].first); in main()
327 assert(!m.suffix().matched); in main()
328 assert(m.suffix().first == m[0].second); in main()
329 assert(m.suffix().second == m[0].second); in main()
330 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
331 assert(m.position(0) == 0); in main()
332 assert(m.str(0) == s); in main()
335 std::cmatch m; in main() local
337 assert(std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
338 assert(m.size() == 1); in main()
339 assert(!m.prefix().matched); in main()
340 assert(m.prefix().first == s); in main()
341 assert(m.prefix().second == m[0].first); in main()
342 assert(!m.suffix().matched); in main()
343 assert(m.suffix().first == m[0].second); in main()
344 assert(m.suffix().second == m[0].second); in main()
345 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
346 assert(m.position(0) == 0); in main()
347 assert(m.str(0) == s); in main()
350 std::cmatch m; in main() local
352 assert(std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
353 assert(m.size() == 1); in main()
354 assert(!m.prefix().matched); in main()
355 assert(m.prefix().first == s); in main()
356 assert(m.prefix().second == m[0].first); in main()
357 assert(!m.suffix().matched); in main()
358 assert(m.suffix().first == m[0].second); in main()
359 assert(m.suffix().second == m[0].second); in main()
360 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
361 assert(m.position(0) == 0); in main()
362 assert(m.str(0) == s); in main()
365 std::cmatch m; in main() local
367 assert(!std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
368 assert(m.size() == 0); in main()
371 std::cmatch m; in main() local
373 assert(!std::regex_match(s, m, std::regex("tour|to|tournament"))); in main()
374 assert(m.size() == 0); in main()
377 std::cmatch m; in main() local
379 assert(!std::regex_match(s, m, std::regex("(tour|to|tournament)+", in main()
381 assert(m.size() == 0); in main()
384 std::cmatch m; in main() local
386 assert(std::regex_match(s, m, std::regex("(tour|to|t)+"))); in main()
387 assert(m.size() == 2); in main()
388 assert(!m.prefix().matched); in main()
389 assert(m.prefix().first == s); in main()
390 assert(m.prefix().second == m[0].first); in main()
391 assert(!m.suffix().matched); in main()
392 assert(m.suffix().first == m[0].second); in main()
393 assert(m.suffix().second == m[0].second); in main()
394 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
395 assert(m.position(0) == 0); in main()
396 assert(m.str(0) == s); in main()
397 assert(m.length(1) == 4); in main()
398 assert(m.position(1) == 3); in main()
399 assert(m.str(1) == "tour"); in main()
402 std::cmatch m; in main() local
404 assert(!std::regex_match(s, m, std::regex("-(.*),\1-"))); in main()
405 assert(m.size() == 0); in main()
408 std::cmatch m; in main() local
410 assert(std::regex_match(s, m, std::regex("-.*,.*-"))); in main()
411 assert(m.size() == 1); in main()
412 assert(!m.prefix().matched); in main()
413 assert(m.prefix().first == s); in main()
414 assert(m.prefix().second == m[0].first); in main()
415 assert(!m.suffix().matched); in main()
416 assert(m.suffix().first == m[0].second); in main()
417 assert(m.suffix().second == m[0].second); in main()
418 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
419 assert(m.position(0) == 0); in main()
420 assert(m.str(0) == s); in main()
423 std::cmatch m; in main() local
425 assert(std::regex_match(s, m, std::regex("^[a]$"))); in main()
426 assert(m.size() == 1); in main()
427 assert(!m.prefix().matched); in main()
428 assert(m.prefix().first == s); in main()
429 assert(m.prefix().second == m[0].first); in main()
430 assert(!m.suffix().matched); in main()
431 assert(m.suffix().first == m[0].second); in main()
432 assert(m.suffix().second == m[0].second); in main()
433 assert(m.length(0) == 1); in main()
434 assert(m.position(0) == 0); in main()
435 assert(m.str(0) == "a"); in main()
438 std::cmatch m; in main() local
440 assert(std::regex_match(s, m, std::regex("^[ab]$"))); in main()
441 assert(m.size() == 1); in main()
442 assert(!m.prefix().matched); in main()
443 assert(m.prefix().first == s); in main()
444 assert(m.prefix().second == m[0].first); in main()
445 assert(!m.suffix().matched); in main()
446 assert(m.suffix().first == m[0].second); in main()
447 assert(m.suffix().second == m[0].second); in main()
448 assert(m.length(0) == 1); in main()
449 assert(m.position(0) == 0); in main()
450 assert(m.str(0) == "a"); in main()
453 std::cmatch m; in main() local
455 assert(std::regex_match(s, m, std::regex("^[a-f]$"))); in main()
456 assert(m.size() == 1); in main()
457 assert(!m.prefix().matched); in main()
458 assert(m.prefix().first == s); in main()
459 assert(m.prefix().second == m[0].first); in main()
460 assert(!m.suffix().matched); in main()
461 assert(m.suffix().first == m[0].second); in main()
462 assert(m.suffix().second == m[0].second); in main()
463 assert(m.length(0) == 1); in main()
464 assert(m.position(0) == 0); in main()
465 assert(m.str(0) == s); in main()
468 std::cmatch m; in main() local
470 assert(!std::regex_match(s, m, std::regex("^[a-f]$"))); in main()
471 assert(m.size() == 0); in main()
474 std::cmatch m; in main() local
476 assert(!std::regex_match(s, m, std::regex("q[^u]"))); in main()
477 assert(m.size() == 0); in main()
480 std::cmatch m; in main() local
482 assert(!std::regex_match(s, m, std::regex("q[^u]"))); in main()
483 assert(m.size() == 0); in main()
486 std::cmatch m; in main() local
488 assert(std::regex_match(s, m, std::regex("A[[:lower:]]B"))); in main()
489 assert(m.size() == 1); in main()
490 assert(!m.prefix().matched); in main()
491 assert(m.prefix().first == s); in main()
492 assert(m.prefix().second == m[0].first); in main()
493 assert(!m.suffix().matched); in main()
494 assert(m.suffix().first == m[0].second); in main()
495 assert(m.suffix().second == m[0].second); in main()
496 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
497 assert(m.position(0) == 0); in main()
498 assert(m.str(0) == s); in main()
501 std::cmatch m; in main() local
503 assert(!std::regex_match(s, m, std::regex("A[[:lower:]]B"))); in main()
504 assert(m.size() == 0); in main()
507 std::cmatch m; in main() local
509 assert(std::regex_match(s, m, std::regex("A[^[:lower:]]B"))); in main()
510 assert(m.size() == 1); in main()
511 assert(!m.prefix().matched); in main()
512 assert(m.prefix().first == s); in main()
513 assert(m.prefix().second == m[0].first); in main()
514 assert(!m.suffix().matched); in main()
515 assert(m.suffix().first == m[0].second); in main()
516 assert(m.suffix().second == m[0].second); in main()
517 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
518 assert(m.position(0) == 0); in main()
519 assert(m.str(0) == s); in main()
522 std::cmatch m; in main() local
524 assert(!std::regex_match(s, m, std::regex("A[^[:lower:]]B"))); in main()
525 assert(m.size() == 0); in main()
528 std::cmatch m; in main() local
530 assert(!std::regex_match(s, m, std::regex("A[^[:lower:]0-9]B"))); in main()
531 assert(m.size() == 0); in main()
534 std::cmatch m; in main() local
536 assert(std::regex_match(s, m, std::regex("A[^[:lower:]0-9]B"))); in main()
537 assert(m.size() == 1); in main()
538 assert(!m.prefix().matched); in main()
539 assert(m.prefix().first == s); in main()
540 assert(m.prefix().second == m[0].first); in main()
541 assert(!m.suffix().matched); in main()
542 assert(m.suffix().first == m[0].second); in main()
543 assert(m.suffix().second == m[0].second); in main()
544 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
545 assert(m.position(0) == 0); in main()
546 assert(m.str(0) == s); in main()
549 std::cmatch m; in main() local
551 assert(std::regex_match(s, m, std::regex("[a[.hyphen.]z]"))); in main()
552 assert(m.size() == 1); in main()
553 assert(!m.prefix().matched); in main()
554 assert(m.prefix().first == s); in main()
555 assert(m.prefix().second == m[0].first); in main()
556 assert(!m.suffix().matched); in main()
557 assert(m.suffix().first == m[0].second); in main()
558 assert(m.suffix().second == m[0].second); in main()
559 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
560 assert(m.position(0) == 0); in main()
561 assert(m.str(0) == s); in main()
564 std::cmatch m; in main() local
566 assert(std::regex_match(s, m, std::regex("[a[.hyphen.]z]"))); in main()
567 assert(m.size() == 1); in main()
568 assert(!m.prefix().matched); in main()
569 assert(m.prefix().first == s); in main()
570 assert(m.prefix().second == m[0].first); in main()
571 assert(!m.suffix().matched); in main()
572 assert(m.suffix().first == m[0].second); in main()
573 assert(m.suffix().second == m[0].second); in main()
574 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
575 assert(m.position(0) == 0); in main()
576 assert(m.str(0) == s); in main()
579 std::cmatch m; in main() local
581 assert(!std::regex_match(s, m, std::regex("[a[.hyphen.]z]"))); in main()
582 assert(m.size() == 0); in main()
586 std::cmatch m; in main() local
588 assert(std::regex_match(s, m, std::regex("[a[=M=]z]"))); in main()
589 assert(m.size() == 1); in main()
590 assert(!m.prefix().matched); in main()
591 assert(m.prefix().first == s); in main()
592 assert(m.prefix().second == m[0].first); in main()
593 assert(!m.suffix().matched); in main()
594 assert(m.suffix().first == m[0].second); in main()
595 assert(m.suffix().second == m[0].second); in main()
596 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
597 assert(m.position(0) == 0); in main()
598 assert(m.str(0) == s); in main()
601 std::cmatch m; in main() local
603 assert(std::regex_match(s, m, std::regex("[a[.ch.]z]", in main()
605 assert(m.size() == 1); in main()
606 assert(!m.prefix().matched); in main()
607 assert(m.prefix().first == s); in main()
608 assert(m.prefix().second == m[0].first); in main()
609 assert(!m.suffix().matched); in main()
610 assert(m.suffix().first == m[0].second); in main()
611 assert(m.suffix().second == m[0].second); in main()
612 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
613 assert(m.position(0) == 0); in main()
614 assert(m.str(0) == s); in main()
617 std::cmatch m; in main() local
619 assert(std::regex_match(s, m, std::regex("[^\\0]*"))); in main()
620 assert(m.size() == 1); in main()
623 std::cmatch m; in main() local
625 assert(std::regex_match(s, s+7, m, std::regex("[abfor\\0]*"))); in main()
626 assert(m.size() == 1); in main()
630 std::cmatch m; in main() local
632 assert(!std::regex_match(s, m, std::regex("[a[=M=]z]"))); in main()
633 assert(m.size() == 0); in main()
636 std::cmatch m; in main() local
638 assert(!std::regex_match(s, m, std::regex("[ace1-9]*"))); in main()
639 assert(m.size() == 0); in main()
642 std::cmatch m; in main() local
644 assert(!std::regex_match(s, m, std::regex("[ace1-9]+"))); in main()
645 assert(m.size() == 0); in main()
653 std::match_results<BI> m; in main() local
656 assert(std::regex_match(BI(s), BI(s+ss), m, regex)); in main()
657 assert(m.size() == 1); in main()
658 assert(!m.prefix().matched); in main()
659 assert(m.prefix().first == BI(s)); in main()
660 assert(m.prefix().second == m[0].first); in main()
661 assert(!m.suffix().matched); in main()
662 assert(m.suffix().first == m[0].second); in main()
663 assert(m.suffix().second == m[0].second); in main()
664 assert(m.length(0) == 4); in main()
665 assert(m.position(0) == 0); in main()
666 assert(m.str(0) == s); in main()
669 std::cmatch m; in main() local
671 assert(!std::regex_match(s, m, std::regex("Jeff(?=s\\b)"))); in main()
672 assert(m.size() == 0); in main()
675 std::cmatch m; in main() local
677 assert(!std::regex_match(s, m, std::regex("Jeff(?!s\\b)"))); in main()
678 assert(m.size() == 0); in main()
681 std::cmatch m; in main() local
683 assert(std::regex_match(s, m, std::regex("\\d[\\W]k"))); in main()
684 assert(m.size() == 1); in main()
685 assert(!m.prefix().matched); in main()
686 assert(m.prefix().first == s); in main()
687 assert(m.prefix().second == m[0].first); in main()
688 assert(!m.suffix().matched); in main()
689 assert(m.suffix().first == m[0].second); in main()
690 assert(m.suffix().second == s + std::char_traits<char>::length(s)); in main()
691 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
692 assert(m.position(0) == 0); in main()
693 assert(m.str(0) == s); in main()
697 std::wcmatch m; in main() local
699 assert(std::regex_match(s, m, std::wregex(L"a"))); in main()
700 assert(m.size() == 1); in main()
701 assert(!m.empty()); in main()
702 assert(!m.prefix().matched); in main()
703 assert(m.prefix().first == s); in main()
704 assert(m.prefix().second == m[0].first); in main()
705 assert(!m.suffix().matched); in main()
706 assert(m.suffix().first == m[0].second); in main()
707 assert(m.suffix().second == s+1); in main()
708 assert(m.length(0) == 1); in main()
709 assert(m.position(0) == 0); in main()
710 assert(m.str(0) == L"a"); in main()
713 std::wcmatch m; in main() local
715 assert(std::regex_match(s, m, std::wregex(L"ab"))); in main()
716 assert(m.size() == 1); in main()
717 assert(!m.prefix().matched); in main()
718 assert(m.prefix().first == s); in main()
719 assert(m.prefix().second == m[0].first); in main()
720 assert(!m.suffix().matched); in main()
721 assert(m.suffix().first == m[0].second); in main()
722 assert(m.suffix().second == s+2); in main()
723 assert(m.length(0) == 2); in main()
724 assert(m.position(0) == 0); in main()
725 assert(m.str(0) == L"ab"); in main()
728 std::wcmatch m; in main() local
730 assert(!std::regex_match(s, m, std::wregex(L"ba"))); in main()
731 assert(m.size() == 0); in main()
732 assert(m.empty()); in main()
735 std::wcmatch m; in main() local
737 assert(!std::regex_match(s, m, std::wregex(L"ab"))); in main()
738 assert(m.size() == 0); in main()
741 std::wcmatch m; in main() local
743 assert(!std::regex_match(s, m, std::wregex(L"ab"), in main()
745 assert(m.size() == 0); in main()
748 std::wcmatch m; in main() local
750 assert(!std::regex_match(s, m, std::wregex(L"bc"))); in main()
751 assert(m.size() == 0); in main()
754 std::wcmatch m; in main() local
756 assert(std::regex_match(s, m, std::wregex(L"ab*c"))); in main()
757 assert(m.size() == 1); in main()
758 assert(!m.prefix().matched); in main()
759 assert(m.prefix().first == s); in main()
760 assert(m.prefix().second == m[0].first); in main()
761 assert(!m.suffix().matched); in main()
762 assert(m.suffix().first == m[0].second); in main()
763 assert(m.suffix().second == s+4); in main()
764 assert(m.length(0) == 4); in main()
765 assert(m.position(0) == 0); in main()
766 assert(m.str(0) == s); in main()
769 std::wcmatch m; in main() local
771 assert(std::regex_match(s, m, std::wregex(L"(ab)*c"))); in main()
772 assert(m.size() == 2); in main()
773 assert(!m.prefix().matched); in main()
774 assert(m.prefix().first == s); in main()
775 assert(m.prefix().second == m[0].first); in main()
776 assert(!m.suffix().matched); in main()
777 assert(m.suffix().first == m[0].second); in main()
778 assert(m.suffix().second == s+5); in main()
779 assert(m.length(0) == 5); in main()
780 assert(m.position(0) == 0); in main()
781 assert(m.str(0) == s); in main()
782 assert(m.length(1) == 2); in main()
783 assert(m.position(1) == 2); in main()
784 assert(m.str(1) == L"ab"); in main()
787 std::wcmatch m; in main() local
789 assert(!std::regex_match(s, m, std::wregex(L"cd((e)fg)hi"))); in main()
790 assert(m.size() == 0); in main()
793 std::wcmatch m; in main() local
795 assert(std::regex_match(s, m, std::wregex(L"^abc"))); in main()
796 assert(m.size() == 1); in main()
797 assert(!m.prefix().matched); in main()
798 assert(m.prefix().first == s); in main()
799 assert(m.prefix().second == m[0].first); in main()
800 assert(!m.suffix().matched); in main()
801 assert(m.suffix().first == m[0].second); in main()
802 assert(m.suffix().second == s+3); in main()
803 assert(m.length(0) == 3); in main()
804 assert(m.position(0) == 0); in main()
805 assert(m.str(0) == s); in main()
808 std::wcmatch m; in main() local
810 assert(!std::regex_match(s, m, std::wregex(L"^abc"))); in main()
811 assert(m.size() == 0); in main()
814 std::wcmatch m; in main() local
816 assert(!std::regex_match(s, m, std::wregex(L"^abc"))); in main()
817 assert(m.size() == 0); in main()
820 std::wcmatch m; in main() local
822 assert(std::regex_match(s, m, std::wregex(L"abc$"))); in main()
823 assert(m.size() == 1); in main()
824 assert(!m.prefix().matched); in main()
825 assert(m.prefix().first == s); in main()
826 assert(m.prefix().second == m[0].first); in main()
827 assert(!m.suffix().matched); in main()
828 assert(m.suffix().first == m[0].second); in main()
829 assert(m.suffix().second == s+3); in main()
830 assert(m.length(0) == 3); in main()
831 assert(m.position(0) == 0); in main()
832 assert(m.str(0) == s); in main()
835 std::wcmatch m; in main() local
837 assert(!std::regex_match(s, m, std::wregex(L"abc$"))); in main()
838 assert(m.size() == 0); in main()
841 std::wcmatch m; in main() local
843 assert(!std::regex_match(s, m, std::wregex(L"abc$"))); in main()
844 assert(m.size() == 0); in main()
847 std::wcmatch m; in main() local
849 assert(std::regex_match(s, m, std::wregex(L"a.c"))); in main()
850 assert(m.size() == 1); in main()
851 assert(!m.prefix().matched); in main()
852 assert(m.prefix().first == s); in main()
853 assert(m.prefix().second == m[0].first); in main()
854 assert(!m.suffix().matched); in main()
855 assert(m.suffix().first == m[0].second); in main()
856 assert(m.suffix().second == s+3); in main()
857 assert(m.length(0) == 3); in main()
858 assert(m.position(0) == 0); in main()
859 assert(m.str(0) == s); in main()
862 std::wcmatch m; in main() local
864 assert(std::regex_match(s, m, std::wregex(L"a.c"))); in main()
865 assert(m.size() == 1); in main()
866 assert(!m.prefix().matched); in main()
867 assert(m.prefix().first == s); in main()
868 assert(m.prefix().second == m[0].first); in main()
869 assert(!m.suffix().matched); in main()
870 assert(m.suffix().first == m[0].second); in main()
871 assert(m.suffix().second == s+3); in main()
872 assert(m.length(0) == 3); in main()
873 assert(m.position(0) == 0); in main()
874 assert(m.str(0) == s); in main()
877 std::wcmatch m; in main() local
879 assert(std::regex_match(s, m, std::wregex(L"a.c"))); in main()
880 assert(m.size() == 1); in main()
881 assert(!m.prefix().matched); in main()
882 assert(m.prefix().first == s); in main()
883 assert(m.prefix().second == m[0].first); in main()
884 assert(!m.suffix().matched); in main()
885 assert(m.suffix().first == m[0].second); in main()
886 assert(m.suffix().second == s+3); in main()
887 assert(m.length(0) == 3); in main()
888 assert(m.position(0) == 0); in main()
889 assert(m.str(0) == s); in main()
892 std::wcmatch m; in main() local
894 assert(std::regex_match(s, m, std::wregex(L"(.*).*"))); in main()
895 assert(m.size() == 2); in main()
896 assert(!m.prefix().matched); in main()
897 assert(m.prefix().first == s); in main()
898 assert(m.prefix().second == m[0].first); in main()
899 assert(!m.suffix().matched); in main()
900 assert(m.suffix().first == m[0].second); in main()
901 assert(m.suffix().second == s+6); in main()
902 assert(m.length(0) == 6); in main()
903 assert(m.position(0) == 0); in main()
904 assert(m.str(0) == s); in main()
905 assert(m.length(1) == 6); in main()
906 assert(m.position(1) == 0); in main()
907 assert(m.str(1) == s); in main()
910 std::wcmatch m; in main() local
912 assert(!std::regex_match(s, m, std::wregex(L"(a*)*"))); in main()
913 assert(m.size() == 0); in main()
916 std::wcmatch m; in main() local
918 assert(!std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
919 assert(m.size() == 0); in main()
922 std::wcmatch m; in main() local
924 assert(std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
925 assert(m.size() == 1); in main()
926 assert(!m.prefix().matched); in main()
927 assert(m.prefix().first == s); in main()
928 assert(m.prefix().second == m[0].first); in main()
929 assert(!m.suffix().matched); in main()
930 assert(m.suffix().first == m[0].second); in main()
931 assert(m.suffix().second == m[0].second); in main()
932 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
933 assert(m.position(0) == 0); in main()
934 assert(m.str(0) == s); in main()
937 std::wcmatch m; in main() local
939 assert(std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
940 assert(m.size() == 1); in main()
941 assert(!m.prefix().matched); in main()
942 assert(m.prefix().first == s); in main()
943 assert(m.prefix().second == m[0].first); in main()
944 assert(!m.suffix().matched); in main()
945 assert(m.suffix().first == m[0].second); in main()
946 assert(m.suffix().second == m[0].second); in main()
947 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
948 assert(m.position(0) == 0); in main()
949 assert(m.str(0) == s); in main()
952 std::wcmatch m; in main() local
954 assert(std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
955 assert(m.size() == 1); in main()
956 assert(!m.prefix().matched); in main()
957 assert(m.prefix().first == s); in main()
958 assert(m.prefix().second == m[0].first); in main()
959 assert(!m.suffix().matched); in main()
960 assert(m.suffix().first == m[0].second); in main()
961 assert(m.suffix().second == m[0].second); in main()
962 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
963 assert(m.position(0) == 0); in main()
964 assert(m.str(0) == s); in main()
967 std::wcmatch m; in main() local
969 assert(!std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
970 assert(m.size() == 0); in main()
973 std::wcmatch m; in main() local
975 assert(!std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
976 assert(m.size() == 0); in main()
979 std::wcmatch m; in main() local
981 assert(!std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
982 assert(m.size() == 0); in main()
985 std::wcmatch m; in main() local
987 assert(std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
988 assert(m.size() == 1); in main()
989 assert(!m.prefix().matched); in main()
990 assert(m.prefix().first == s); in main()
991 assert(m.prefix().second == m[0].first); in main()
992 assert(!m.suffix().matched); in main()
993 assert(m.suffix().first == m[0].second); in main()
994 assert(m.suffix().second == m[0].second); in main()
995 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
996 assert(m.position(0) == 0); in main()
997 assert(m.str(0) == s); in main()
1000 std::wcmatch m; in main() local
1002 assert(std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
1003 assert(m.size() == 1); in main()
1004 assert(!m.prefix().matched); in main()
1005 assert(m.prefix().first == s); in main()
1006 assert(m.prefix().second == m[0].first); in main()
1007 assert(!m.suffix().matched); in main()
1008 assert(m.suffix().first == m[0].second); in main()
1009 assert(m.suffix().second == m[0].second); in main()
1010 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1011 assert(m.position(0) == 0); in main()
1012 assert(m.str(0) == s); in main()
1015 std::wcmatch m; in main() local
1017 assert(std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
1018 assert(m.size() == 1); in main()
1019 assert(!m.prefix().matched); in main()
1020 assert(m.prefix().first == s); in main()
1021 assert(m.prefix().second == m[0].first); in main()
1022 assert(!m.suffix().matched); in main()
1023 assert(m.suffix().first == m[0].second); in main()
1024 assert(m.suffix().second == m[0].second); in main()
1025 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1026 assert(m.position(0) == 0); in main()
1027 assert(m.str(0) == s); in main()
1030 std::wcmatch m; in main() local
1032 assert(!std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
1033 assert(m.size() == 0); in main()
1036 std::wcmatch m; in main() local
1038 assert(!std::regex_match(s, m, std::wregex(L"tour|to|tournament"))); in main()
1039 assert(m.size() == 0); in main()
1042 std::wcmatch m; in main() local
1044 assert(!std::regex_match(s, m, std::wregex(L"(tour|to|tournament)+", in main()
1046 assert(m.size() == 0); in main()
1049 std::wcmatch m; in main() local
1051 assert(std::regex_match(s, m, std::wregex(L"(tour|to|t)+"))); in main()
1052 assert(m.size() == 2); in main()
1053 assert(!m.prefix().matched); in main()
1054 assert(m.prefix().first == s); in main()
1055 assert(m.prefix().second == m[0].first); in main()
1056 assert(!m.suffix().matched); in main()
1057 assert(m.suffix().first == m[0].second); in main()
1058 assert(m.suffix().second == m[0].second); in main()
1059 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1060 assert(m.position(0) == 0); in main()
1061 assert(m.str(0) == s); in main()
1062 assert(m.length(1) == 4); in main()
1063 assert(m.position(1) == 3); in main()
1064 assert(m.str(1) == L"tour"); in main()
1067 std::wcmatch m; in main() local
1069 assert(!std::regex_match(s, m, std::wregex(L"-(.*),\1-"))); in main()
1070 assert(m.size() == 0); in main()
1073 std::wcmatch m; in main() local
1075 assert(std::regex_match(s, m, std::wregex(L"-.*,.*-"))); in main()
1076 assert(m.size() == 1); in main()
1077 assert(!m.prefix().matched); in main()
1078 assert(m.prefix().first == s); in main()
1079 assert(m.prefix().second == m[0].first); in main()
1080 assert(!m.suffix().matched); in main()
1081 assert(m.suffix().first == m[0].second); in main()
1082 assert(m.suffix().second == m[0].second); in main()
1083 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1084 assert(m.position(0) == 0); in main()
1085 assert(m.str(0) == s); in main()
1088 std::wcmatch m; in main() local
1090 assert(std::regex_match(s, m, std::wregex(L"^[a]$"))); in main()
1091 assert(m.size() == 1); in main()
1092 assert(!m.prefix().matched); in main()
1093 assert(m.prefix().first == s); in main()
1094 assert(m.prefix().second == m[0].first); in main()
1095 assert(!m.suffix().matched); in main()
1096 assert(m.suffix().first == m[0].second); in main()
1097 assert(m.suffix().second == m[0].second); in main()
1098 assert(m.length(0) == 1); in main()
1099 assert(m.position(0) == 0); in main()
1100 assert(m.str(0) == L"a"); in main()
1103 std::wcmatch m; in main() local
1105 assert(std::regex_match(s, m, std::wregex(L"^[ab]$"))); in main()
1106 assert(m.size() == 1); in main()
1107 assert(!m.prefix().matched); in main()
1108 assert(m.prefix().first == s); in main()
1109 assert(m.prefix().second == m[0].first); in main()
1110 assert(!m.suffix().matched); in main()
1111 assert(m.suffix().first == m[0].second); in main()
1112 assert(m.suffix().second == m[0].second); in main()
1113 assert(m.length(0) == 1); in main()
1114 assert(m.position(0) == 0); in main()
1115 assert(m.str(0) == L"a"); in main()
1118 std::wcmatch m; in main() local
1120 assert(std::regex_match(s, m, std::wregex(L"^[a-f]$"))); in main()
1121 assert(m.size() == 1); in main()
1122 assert(!m.prefix().matched); in main()
1123 assert(m.prefix().first == s); in main()
1124 assert(m.prefix().second == m[0].first); in main()
1125 assert(!m.suffix().matched); in main()
1126 assert(m.suffix().first == m[0].second); in main()
1127 assert(m.suffix().second == m[0].second); in main()
1128 assert(m.length(0) == 1); in main()
1129 assert(m.position(0) == 0); in main()
1130 assert(m.str(0) == s); in main()
1133 std::wcmatch m; in main() local
1135 assert(!std::regex_match(s, m, std::wregex(L"^[a-f]$"))); in main()
1136 assert(m.size() == 0); in main()
1139 std::wcmatch m; in main() local
1141 assert(!std::regex_match(s, m, std::wregex(L"q[^u]"))); in main()
1142 assert(m.size() == 0); in main()
1145 std::wcmatch m; in main() local
1147 assert(!std::regex_match(s, m, std::wregex(L"q[^u]"))); in main()
1148 assert(m.size() == 0); in main()
1151 std::wcmatch m; in main() local
1153 assert(std::regex_match(s, m, std::wregex(L"A[[:lower:]]B"))); in main()
1154 assert(m.size() == 1); in main()
1155 assert(!m.prefix().matched); in main()
1156 assert(m.prefix().first == s); in main()
1157 assert(m.prefix().second == m[0].first); in main()
1158 assert(!m.suffix().matched); in main()
1159 assert(m.suffix().first == m[0].second); in main()
1160 assert(m.suffix().second == m[0].second); in main()
1161 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1162 assert(m.position(0) == 0); in main()
1163 assert(m.str(0) == s); in main()
1166 std::wcmatch m; in main() local
1168 assert(!std::regex_match(s, m, std::wregex(L"A[[:lower:]]B"))); in main()
1169 assert(m.size() == 0); in main()
1172 std::wcmatch m; in main() local
1174 assert(std::regex_match(s, m, std::wregex(L"A[^[:lower:]]B"))); in main()
1175 assert(m.size() == 1); in main()
1176 assert(!m.prefix().matched); in main()
1177 assert(m.prefix().first == s); in main()
1178 assert(m.prefix().second == m[0].first); in main()
1179 assert(!m.suffix().matched); in main()
1180 assert(m.suffix().first == m[0].second); in main()
1181 assert(m.suffix().second == m[0].second); in main()
1182 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1183 assert(m.position(0) == 0); in main()
1184 assert(m.str(0) == s); in main()
1187 std::wcmatch m; in main() local
1189 assert(!std::regex_match(s, m, std::wregex(L"A[^[:lower:]]B"))); in main()
1190 assert(m.size() == 0); in main()
1193 std::wcmatch m; in main() local
1195 assert(!std::regex_match(s, m, std::wregex(L"A[^[:lower:]0-9]B"))); in main()
1196 assert(m.size() == 0); in main()
1199 std::wcmatch m; in main() local
1201 assert(std::regex_match(s, m, std::wregex(L"A[^[:lower:]0-9]B"))); in main()
1202 assert(m.size() == 1); in main()
1203 assert(!m.prefix().matched); in main()
1204 assert(m.prefix().first == s); in main()
1205 assert(m.prefix().second == m[0].first); in main()
1206 assert(!m.suffix().matched); in main()
1207 assert(m.suffix().first == m[0].second); in main()
1208 assert(m.suffix().second == m[0].second); in main()
1209 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1210 assert(m.position(0) == 0); in main()
1211 assert(m.str(0) == s); in main()
1214 std::wcmatch m; in main() local
1216 assert(std::regex_match(s, m, std::wregex(L"[a[.hyphen.]z]"))); in main()
1217 assert(m.size() == 1); in main()
1218 assert(!m.prefix().matched); in main()
1219 assert(m.prefix().first == s); in main()
1220 assert(m.prefix().second == m[0].first); in main()
1221 assert(!m.suffix().matched); in main()
1222 assert(m.suffix().first == m[0].second); in main()
1223 assert(m.suffix().second == m[0].second); in main()
1224 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1225 assert(m.position(0) == 0); in main()
1226 assert(m.str(0) == s); in main()
1229 std::wcmatch m; in main() local
1231 assert(std::regex_match(s, m, std::wregex(L"[a[.hyphen.]z]"))); in main()
1232 assert(m.size() == 1); in main()
1233 assert(!m.prefix().matched); in main()
1234 assert(m.prefix().first == s); in main()
1235 assert(m.prefix().second == m[0].first); in main()
1236 assert(!m.suffix().matched); in main()
1237 assert(m.suffix().first == m[0].second); in main()
1238 assert(m.suffix().second == m[0].second); in main()
1239 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1240 assert(m.position(0) == 0); in main()
1241 assert(m.str(0) == s); in main()
1244 std::wcmatch m; in main() local
1246 assert(!std::regex_match(s, m, std::wregex(L"[a[.hyphen.]z]"))); in main()
1247 assert(m.size() == 0); in main()
1251 std::wcmatch m; in main() local
1253 assert(std::regex_match(s, m, std::wregex(L"[a[=M=]z]"))); in main()
1254 assert(m.size() == 1); in main()
1255 assert(!m.prefix().matched); in main()
1256 assert(m.prefix().first == s); in main()
1257 assert(m.prefix().second == m[0].first); in main()
1258 assert(!m.suffix().matched); in main()
1259 assert(m.suffix().first == m[0].second); in main()
1260 assert(m.suffix().second == m[0].second); in main()
1261 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1262 assert(m.position(0) == 0); in main()
1263 assert(m.str(0) == s); in main()
1266 std::wcmatch m; in main() local
1268 assert(std::regex_match(s, m, std::wregex(L"[a[.ch.]z]", in main()
1270 assert(m.size() == 1); in main()
1271 assert(!m.prefix().matched); in main()
1272 assert(m.prefix().first == s); in main()
1273 assert(m.prefix().second == m[0].first); in main()
1274 assert(!m.suffix().matched); in main()
1275 assert(m.suffix().first == m[0].second); in main()
1276 assert(m.suffix().second == m[0].second); in main()
1277 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1278 assert(m.position(0) == 0); in main()
1279 assert(m.str(0) == s); in main()
1283 std::wcmatch m; in main() local
1285 assert(!std::regex_match(s, m, std::wregex(L"[a[=M=]z]"))); in main()
1286 assert(m.size() == 0); in main()
1289 std::wcmatch m; in main() local
1291 assert(!std::regex_match(s, m, std::wregex(L"[ace1-9]*"))); in main()
1292 assert(m.size() == 0); in main()
1295 std::wcmatch m; in main() local
1297 assert(!std::regex_match(s, m, std::wregex(L"[ace1-9]+"))); in main()
1298 assert(m.size() == 0); in main()
1306 std::match_results<BI> m; in main() local
1309 assert(std::regex_match(BI(s), BI(s+ss), m, regex)); in main()
1310 assert(m.size() == 1); in main()
1311 assert(!m.prefix().matched); in main()
1312 assert(m.prefix().first == BI(s)); in main()
1313 assert(m.prefix().second == m[0].first); in main()
1314 assert(!m.suffix().matched); in main()
1315 assert(m.suffix().first == m[0].second); in main()
1316 assert(m.suffix().second == m[0].second); in main()
1317 assert(m.length(0) == 4); in main()
1318 assert(m.position(0) == 0); in main()
1319 assert(m.str(0) == s); in main()
1322 std::wcmatch m; in main() local
1324 assert(!std::regex_match(s, m, std::wregex(L"Jeff(?=s\\b)"))); in main()
1325 assert(m.size() == 0); in main()
1328 std::wcmatch m; in main() local
1330 assert(!std::regex_match(s, m, std::wregex(L"Jeff(?!s\\b)"))); in main()
1331 assert(m.size() == 0); in main()
1334 std::wcmatch m; in main() local
1336 assert(std::regex_match(s, m, std::wregex(L"\\d[\\W]k"))); in main()
1337 assert(m.size() == 1); in main()
1338 assert(!m.prefix().matched); in main()
1339 assert(m.prefix().first == s); in main()
1340 assert(m.prefix().second == m[0].first); in main()
1341 assert(!m.suffix().matched); in main()
1342 assert(m.suffix().first == m[0].second); in main()
1343 assert(m.suffix().second == s + std::char_traits<wchar_t>::length(s)); in main()
1344 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1345 assert(m.position(0) == 0); in main()
1346 assert(m.str(0) == s); in main()