Lines Matching refs:m
33 std::cmatch m; in main() local
35 assert(std::regex_match(s, m, std::regex("a"))); in main()
36 assert(m.size() == 1); in main()
37 assert(!m.empty()); in main()
38 assert(!m.prefix().matched); in main()
39 assert(m.prefix().first == s); in main()
40 assert(m.prefix().second == m[0].first); in main()
41 assert(!m.suffix().matched); in main()
42 assert(m.suffix().first == m[0].second); in main()
43 assert(m.suffix().second == s+1); in main()
44 assert(m.length(0) == 1); in main()
45 assert(m.position(0) == 0); in main()
46 assert(m.str(0) == "a"); in main()
49 std::cmatch m; in main() local
51 assert(std::regex_match(s, m, std::regex("ab"))); in main()
52 assert(m.size() == 1); in main()
53 assert(!m.prefix().matched); in main()
54 assert(m.prefix().first == s); in main()
55 assert(m.prefix().second == m[0].first); in main()
56 assert(!m.suffix().matched); in main()
57 assert(m.suffix().first == m[0].second); in main()
58 assert(m.suffix().second == s+2); in main()
59 assert(m.length(0) == 2); in main()
60 assert(m.position(0) == 0); in main()
61 assert(m.str(0) == "ab"); in main()
64 std::cmatch m; in main() local
66 assert(!std::regex_match(s, m, std::regex("ba"))); in main()
67 assert(m.size() == 0); in main()
68 assert(m.empty()); in main()
71 std::cmatch m; in main() local
73 assert(!std::regex_match(s, m, std::regex("ab"))); in main()
74 assert(m.size() == 0); in main()
77 std::cmatch m; in main() local
79 assert(!std::regex_match(s, m, std::regex("ab"), in main()
81 assert(m.size() == 0); in main()
84 std::cmatch m; in main() local
86 assert(!std::regex_match(s, m, std::regex("bc"))); in main()
87 assert(m.size() == 0); in main()
90 std::cmatch m; in main() local
92 assert(std::regex_match(s, m, std::regex("ab*c"))); in main()
93 assert(m.size() == 1); in main()
94 assert(!m.prefix().matched); in main()
95 assert(m.prefix().first == s); in main()
96 assert(m.prefix().second == m[0].first); in main()
97 assert(!m.suffix().matched); in main()
98 assert(m.suffix().first == m[0].second); in main()
99 assert(m.suffix().second == s+4); in main()
100 assert(m.length(0) == 4); in main()
101 assert(m.position(0) == 0); in main()
102 assert(m.str(0) == s); in main()
105 std::cmatch m; in main() local
107 assert(std::regex_match(s, m, std::regex("(ab)*c"))); in main()
108 assert(m.size() == 2); in main()
109 assert(!m.prefix().matched); in main()
110 assert(m.prefix().first == s); in main()
111 assert(m.prefix().second == m[0].first); in main()
112 assert(!m.suffix().matched); in main()
113 assert(m.suffix().first == m[0].second); in main()
114 assert(m.suffix().second == s+5); in main()
115 assert(m.length(0) == 5); in main()
116 assert(m.position(0) == 0); in main()
117 assert(m.str(0) == s); in main()
118 assert(m.length(1) == 2); in main()
119 assert(m.position(1) == 2); in main()
120 assert(m.str(1) == "ab"); in main()
123 std::cmatch m; in main() local
125 assert(!std::regex_match(s, m, std::regex("cd((e)fg)hi"))); in main()
126 assert(m.size() == 0); in main()
129 std::cmatch m; in main() local
131 assert(std::regex_match(s, m, std::regex("^abc"))); in main()
132 assert(m.size() == 1); in main()
133 assert(!m.prefix().matched); in main()
134 assert(m.prefix().first == s); in main()
135 assert(m.prefix().second == m[0].first); in main()
136 assert(!m.suffix().matched); in main()
137 assert(m.suffix().first == m[0].second); in main()
138 assert(m.suffix().second == s+3); in main()
139 assert(m.length(0) == 3); in main()
140 assert(m.position(0) == 0); in main()
141 assert(m.str(0) == s); in main()
144 std::cmatch m; in main() local
146 assert(!std::regex_match(s, m, std::regex("^abc"))); in main()
147 assert(m.size() == 0); in main()
150 std::cmatch m; in main() local
152 assert(!std::regex_match(s, m, std::regex("^abc"))); in main()
153 assert(m.size() == 0); in main()
156 std::cmatch m; in main() local
158 assert(std::regex_match(s, m, std::regex("abc$"))); in main()
159 assert(m.size() == 1); in main()
160 assert(!m.prefix().matched); in main()
161 assert(m.prefix().first == s); in main()
162 assert(m.prefix().second == m[0].first); in main()
163 assert(!m.suffix().matched); in main()
164 assert(m.suffix().first == m[0].second); in main()
165 assert(m.suffix().second == s+3); in main()
166 assert(m.length(0) == 3); in main()
167 assert(m.position(0) == 0); in main()
168 assert(m.str(0) == s); in main()
171 std::cmatch m; in main() local
173 assert(!std::regex_match(s, m, std::regex("abc$"))); in main()
174 assert(m.size() == 0); in main()
177 std::cmatch m; in main() local
179 assert(!std::regex_match(s, m, std::regex("abc$"))); in main()
180 assert(m.size() == 0); in main()
183 std::cmatch m; in main() local
185 assert(std::regex_match(s, m, std::regex("a.c"))); in main()
186 assert(m.size() == 1); in main()
187 assert(!m.prefix().matched); in main()
188 assert(m.prefix().first == s); in main()
189 assert(m.prefix().second == m[0].first); in main()
190 assert(!m.suffix().matched); in main()
191 assert(m.suffix().first == m[0].second); in main()
192 assert(m.suffix().second == s+3); in main()
193 assert(m.length(0) == 3); in main()
194 assert(m.position(0) == 0); in main()
195 assert(m.str(0) == s); in main()
198 std::cmatch m; in main() local
200 assert(std::regex_match(s, m, std::regex("a.c"))); in main()
201 assert(m.size() == 1); in main()
202 assert(!m.prefix().matched); in main()
203 assert(m.prefix().first == s); in main()
204 assert(m.prefix().second == m[0].first); in main()
205 assert(!m.suffix().matched); in main()
206 assert(m.suffix().first == m[0].second); in main()
207 assert(m.suffix().second == s+3); in main()
208 assert(m.length(0) == 3); in main()
209 assert(m.position(0) == 0); in main()
210 assert(m.str(0) == s); in main()
213 std::cmatch m; in main() local
215 assert(std::regex_match(s, m, std::regex("a.c"))); in main()
216 assert(m.size() == 1); in main()
217 assert(!m.prefix().matched); in main()
218 assert(m.prefix().first == s); in main()
219 assert(m.prefix().second == m[0].first); in main()
220 assert(!m.suffix().matched); in main()
221 assert(m.suffix().first == m[0].second); in main()
222 assert(m.suffix().second == s+3); in main()
223 assert(m.length(0) == 3); in main()
224 assert(m.position(0) == 0); in main()
225 assert(m.str(0) == s); in main()
228 std::cmatch m; in main() local
230 assert(std::regex_match(s, m, std::regex("(.*).*"))); in main()
231 assert(m.size() == 2); in main()
232 assert(!m.prefix().matched); in main()
233 assert(m.prefix().first == s); in main()
234 assert(m.prefix().second == m[0].first); in main()
235 assert(!m.suffix().matched); in main()
236 assert(m.suffix().first == m[0].second); in main()
237 assert(m.suffix().second == s+6); in main()
238 assert(m.length(0) == 6); in main()
239 assert(m.position(0) == 0); in main()
240 assert(m.str(0) == s); in main()
241 assert(m.length(1) == 6); in main()
242 assert(m.position(1) == 0); in main()
243 assert(m.str(1) == s); in main()
246 std::cmatch m; in main() local
248 assert(!std::regex_match(s, m, std::regex("(a*)*"))); in main()
249 assert(m.size() == 0); in main()
252 std::cmatch m; in main() local
254 assert(!std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
255 assert(m.size() == 0); in main()
258 std::cmatch m; in main() local
260 assert(std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
261 assert(m.size() == 1); in main()
262 assert(!m.prefix().matched); in main()
263 assert(m.prefix().first == s); in main()
264 assert(m.prefix().second == m[0].first); in main()
265 assert(!m.suffix().matched); in main()
266 assert(m.suffix().first == m[0].second); in main()
267 assert(m.suffix().second == m[0].second); in main()
268 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
269 assert(m.position(0) == 0); in main()
270 assert(m.str(0) == s); in main()
273 std::cmatch m; in main() local
275 assert(std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
276 assert(m.size() == 1); in main()
277 assert(!m.prefix().matched); in main()
278 assert(m.prefix().first == s); in main()
279 assert(m.prefix().second == m[0].first); in main()
280 assert(!m.suffix().matched); in main()
281 assert(m.suffix().first == m[0].second); in main()
282 assert(m.suffix().second == m[0].second); in main()
283 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
284 assert(m.position(0) == 0); in main()
285 assert(m.str(0) == s); in main()
288 std::cmatch m; in main() local
290 assert(std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
291 assert(m.size() == 1); in main()
292 assert(!m.prefix().matched); in main()
293 assert(m.prefix().first == s); in main()
294 assert(m.prefix().second == m[0].first); in main()
295 assert(!m.suffix().matched); in main()
296 assert(m.suffix().first == m[0].second); in main()
297 assert(m.suffix().second == m[0].second); in main()
298 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
299 assert(m.position(0) == 0); in main()
300 assert(m.str(0) == s); in main()
303 std::cmatch m; in main() local
305 assert(!std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
306 assert(m.size() == 0); in main()
309 std::cmatch m; in main() local
311 assert(!std::regex_match(s, m, std::regex("ab{3,5}c"))); in main()
312 assert(m.size() == 0); in main()
315 std::cmatch m; in main() local
317 assert(!std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
318 assert(m.size() == 0); in main()
321 std::cmatch m; in main() local
323 assert(std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
324 assert(m.size() == 1); in main()
325 assert(!m.prefix().matched); in main()
326 assert(m.prefix().first == s); in main()
327 assert(m.prefix().second == m[0].first); in main()
328 assert(!m.suffix().matched); in main()
329 assert(m.suffix().first == m[0].second); in main()
330 assert(m.suffix().second == m[0].second); in main()
331 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
332 assert(m.position(0) == 0); in main()
333 assert(m.str(0) == s); in main()
336 std::cmatch m; in main() local
338 assert(std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
339 assert(m.size() == 1); in main()
340 assert(!m.prefix().matched); in main()
341 assert(m.prefix().first == s); in main()
342 assert(m.prefix().second == m[0].first); in main()
343 assert(!m.suffix().matched); in main()
344 assert(m.suffix().first == m[0].second); in main()
345 assert(m.suffix().second == m[0].second); in main()
346 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
347 assert(m.position(0) == 0); in main()
348 assert(m.str(0) == s); in main()
351 std::cmatch m; in main() local
353 assert(std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
354 assert(m.size() == 1); in main()
355 assert(!m.prefix().matched); in main()
356 assert(m.prefix().first == s); in main()
357 assert(m.prefix().second == m[0].first); in main()
358 assert(!m.suffix().matched); in main()
359 assert(m.suffix().first == m[0].second); in main()
360 assert(m.suffix().second == m[0].second); in main()
361 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
362 assert(m.position(0) == 0); in main()
363 assert(m.str(0) == s); in main()
366 std::cmatch m; in main() local
368 assert(!std::regex_match(s, m, std::regex("a.{3,5}c"))); in main()
369 assert(m.size() == 0); in main()
372 std::cmatch m; in main() local
374 assert(!std::regex_match(s, m, std::regex("tour|to|tournament"))); in main()
375 assert(m.size() == 0); in main()
378 std::cmatch m; in main() local
380 assert(!std::regex_match(s, m, std::regex("(tour|to|tournament)+", in main()
382 assert(m.size() == 0); in main()
385 std::cmatch m; in main() local
387 assert(std::regex_match(s, m, std::regex("(tour|to|t)+"))); in main()
388 assert(m.size() == 2); in main()
389 assert(!m.prefix().matched); in main()
390 assert(m.prefix().first == s); in main()
391 assert(m.prefix().second == m[0].first); in main()
392 assert(!m.suffix().matched); in main()
393 assert(m.suffix().first == m[0].second); in main()
394 assert(m.suffix().second == m[0].second); in main()
395 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
396 assert(m.position(0) == 0); in main()
397 assert(m.str(0) == s); in main()
398 assert(m.length(1) == 4); in main()
399 assert(m.position(1) == 3); in main()
400 assert(m.str(1) == "tour"); in main()
403 std::cmatch m; in main() local
405 assert(!std::regex_match(s, m, std::regex("-(.*),\1-"))); in main()
406 assert(m.size() == 0); in main()
409 std::cmatch m; in main() local
411 assert(std::regex_match(s, m, std::regex("-.*,.*-"))); in main()
412 assert(m.size() == 1); in main()
413 assert(!m.prefix().matched); in main()
414 assert(m.prefix().first == s); in main()
415 assert(m.prefix().second == m[0].first); in main()
416 assert(!m.suffix().matched); in main()
417 assert(m.suffix().first == m[0].second); in main()
418 assert(m.suffix().second == m[0].second); in main()
419 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
420 assert(m.position(0) == 0); in main()
421 assert(m.str(0) == s); in main()
424 std::cmatch m; in main() local
426 assert(std::regex_match(s, m, std::regex("^[a]$"))); in main()
427 assert(m.size() == 1); in main()
428 assert(!m.prefix().matched); in main()
429 assert(m.prefix().first == s); in main()
430 assert(m.prefix().second == m[0].first); in main()
431 assert(!m.suffix().matched); in main()
432 assert(m.suffix().first == m[0].second); in main()
433 assert(m.suffix().second == m[0].second); in main()
434 assert(m.length(0) == 1); in main()
435 assert(m.position(0) == 0); in main()
436 assert(m.str(0) == "a"); in main()
439 std::cmatch m; in main() local
441 assert(std::regex_match(s, m, std::regex("^[ab]$"))); in main()
442 assert(m.size() == 1); in main()
443 assert(!m.prefix().matched); in main()
444 assert(m.prefix().first == s); in main()
445 assert(m.prefix().second == m[0].first); in main()
446 assert(!m.suffix().matched); in main()
447 assert(m.suffix().first == m[0].second); in main()
448 assert(m.suffix().second == m[0].second); in main()
449 assert(m.length(0) == 1); in main()
450 assert(m.position(0) == 0); in main()
451 assert(m.str(0) == "a"); in main()
454 std::cmatch m; in main() local
456 assert(std::regex_match(s, m, std::regex("^[a-f]$"))); in main()
457 assert(m.size() == 1); in main()
458 assert(!m.prefix().matched); in main()
459 assert(m.prefix().first == s); in main()
460 assert(m.prefix().second == m[0].first); in main()
461 assert(!m.suffix().matched); in main()
462 assert(m.suffix().first == m[0].second); in main()
463 assert(m.suffix().second == m[0].second); in main()
464 assert(m.length(0) == 1); in main()
465 assert(m.position(0) == 0); in main()
466 assert(m.str(0) == s); in main()
469 std::cmatch m; in main() local
471 assert(!std::regex_match(s, m, std::regex("^[a-f]$"))); in main()
472 assert(m.size() == 0); in main()
475 std::cmatch m; in main() local
477 assert(!std::regex_match(s, m, std::regex("q[^u]"))); in main()
478 assert(m.size() == 0); in main()
481 std::cmatch m; in main() local
483 assert(!std::regex_match(s, m, std::regex("q[^u]"))); in main()
484 assert(m.size() == 0); in main()
487 std::cmatch m; in main() local
489 assert(std::regex_match(s, m, std::regex("A[[:lower:]]B"))); in main()
490 assert(m.size() == 1); in main()
491 assert(!m.prefix().matched); in main()
492 assert(m.prefix().first == s); in main()
493 assert(m.prefix().second == m[0].first); in main()
494 assert(!m.suffix().matched); in main()
495 assert(m.suffix().first == m[0].second); in main()
496 assert(m.suffix().second == m[0].second); in main()
497 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
498 assert(m.position(0) == 0); in main()
499 assert(m.str(0) == s); in main()
502 std::cmatch m; in main() local
504 assert(!std::regex_match(s, m, std::regex("A[[:lower:]]B"))); in main()
505 assert(m.size() == 0); in main()
508 std::cmatch m; in main() local
510 assert(std::regex_match(s, m, std::regex("A[^[:lower:]]B"))); in main()
511 assert(m.size() == 1); in main()
512 assert(!m.prefix().matched); in main()
513 assert(m.prefix().first == s); in main()
514 assert(m.prefix().second == m[0].first); in main()
515 assert(!m.suffix().matched); in main()
516 assert(m.suffix().first == m[0].second); in main()
517 assert(m.suffix().second == m[0].second); in main()
518 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
519 assert(m.position(0) == 0); in main()
520 assert(m.str(0) == s); in main()
523 std::cmatch m; in main() local
525 assert(!std::regex_match(s, m, std::regex("A[^[:lower:]]B"))); in main()
526 assert(m.size() == 0); in main()
529 std::cmatch m; in main() local
531 assert(!std::regex_match(s, m, std::regex("A[^[:lower:]0-9]B"))); in main()
532 assert(m.size() == 0); in main()
535 std::cmatch m; in main() local
537 assert(std::regex_match(s, m, std::regex("A[^[:lower:]0-9]B"))); in main()
538 assert(m.size() == 1); in main()
539 assert(!m.prefix().matched); in main()
540 assert(m.prefix().first == s); in main()
541 assert(m.prefix().second == m[0].first); in main()
542 assert(!m.suffix().matched); in main()
543 assert(m.suffix().first == m[0].second); in main()
544 assert(m.suffix().second == m[0].second); in main()
545 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
546 assert(m.position(0) == 0); in main()
547 assert(m.str(0) == s); in main()
550 std::cmatch m; in main() local
552 assert(std::regex_match(s, m, std::regex("[a[.hyphen.]z]"))); in main()
553 assert(m.size() == 1); in main()
554 assert(!m.prefix().matched); in main()
555 assert(m.prefix().first == s); in main()
556 assert(m.prefix().second == m[0].first); in main()
557 assert(!m.suffix().matched); in main()
558 assert(m.suffix().first == m[0].second); in main()
559 assert(m.suffix().second == m[0].second); in main()
560 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
561 assert(m.position(0) == 0); in main()
562 assert(m.str(0) == s); in main()
565 std::cmatch m; in main() local
567 assert(std::regex_match(s, m, std::regex("[a[.hyphen.]z]"))); in main()
568 assert(m.size() == 1); in main()
569 assert(!m.prefix().matched); in main()
570 assert(m.prefix().first == s); in main()
571 assert(m.prefix().second == m[0].first); in main()
572 assert(!m.suffix().matched); in main()
573 assert(m.suffix().first == m[0].second); in main()
574 assert(m.suffix().second == m[0].second); in main()
575 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
576 assert(m.position(0) == 0); in main()
577 assert(m.str(0) == s); in main()
580 std::cmatch m; in main() local
582 assert(!std::regex_match(s, m, std::regex("[a[.hyphen.]z]"))); in main()
583 assert(m.size() == 0); in main()
587 std::cmatch m; in main() local
589 assert(std::regex_match(s, m, std::regex("[a[=M=]z]"))); in main()
590 assert(m.size() == 1); in main()
591 assert(!m.prefix().matched); in main()
592 assert(m.prefix().first == s); in main()
593 assert(m.prefix().second == m[0].first); in main()
594 assert(!m.suffix().matched); in main()
595 assert(m.suffix().first == m[0].second); in main()
596 assert(m.suffix().second == m[0].second); in main()
597 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
598 assert(m.position(0) == 0); in main()
599 assert(m.str(0) == s); in main()
602 std::cmatch m; in main() local
604 assert(std::regex_match(s, m, std::regex("[a[.ch.]z]", in main()
606 assert(m.size() == 1); in main()
607 assert(!m.prefix().matched); in main()
608 assert(m.prefix().first == s); in main()
609 assert(m.prefix().second == m[0].first); in main()
610 assert(!m.suffix().matched); in main()
611 assert(m.suffix().first == m[0].second); in main()
612 assert(m.suffix().second == m[0].second); in main()
613 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
614 assert(m.position(0) == 0); in main()
615 assert(m.str(0) == s); in main()
618 std::cmatch m; in main() local
620 assert(std::regex_match(s, m, std::regex("[^\\0]*"))); in main()
621 assert(m.size() == 1); in main()
624 std::cmatch m; in main() local
626 assert(std::regex_match(s, s+7, m, std::regex("[abfor\\0]*"))); in main()
627 assert(m.size() == 1); in main()
631 std::cmatch m; in main() local
633 assert(!std::regex_match(s, m, std::regex("[a[=M=]z]"))); in main()
634 assert(m.size() == 0); in main()
637 std::cmatch m; in main() local
639 assert(!std::regex_match(s, m, std::regex("[ace1-9]*"))); in main()
640 assert(m.size() == 0); in main()
643 std::cmatch m; in main() local
645 assert(!std::regex_match(s, m, std::regex("[ace1-9]+"))); in main()
646 assert(m.size() == 0); in main()
654 std::match_results<BI> m; in main() local
657 assert(std::regex_match(BI(s), BI(s+ss), m, regex)); in main()
658 assert(m.size() == 1); in main()
659 assert(!m.prefix().matched); in main()
660 assert(m.prefix().first == BI(s)); in main()
661 assert(m.prefix().second == m[0].first); in main()
662 assert(!m.suffix().matched); in main()
663 assert(m.suffix().first == m[0].second); in main()
664 assert(m.suffix().second == m[0].second); in main()
665 assert(m.length(0) == 4); in main()
666 assert(m.position(0) == 0); in main()
667 assert(m.str(0) == s); in main()
670 std::cmatch m; in main() local
672 assert(!std::regex_match(s, m, std::regex("Jeff(?=s\\b)"))); in main()
673 assert(m.size() == 0); in main()
676 std::cmatch m; in main() local
678 assert(!std::regex_match(s, m, std::regex("Jeff(?!s\\b)"))); in main()
679 assert(m.size() == 0); in main()
682 std::cmatch m; in main() local
684 assert(std::regex_match(s, m, std::regex("\\d[\\W]k"))); in main()
685 assert(m.size() == 1); in main()
686 assert(!m.prefix().matched); in main()
687 assert(m.prefix().first == s); in main()
688 assert(m.prefix().second == m[0].first); in main()
689 assert(!m.suffix().matched); in main()
690 assert(m.suffix().first == m[0].second); in main()
691 assert(m.suffix().second == s + std::char_traits<char>::length(s)); in main()
692 assert(m.length(0) == std::char_traits<char>::length(s)); in main()
693 assert(m.position(0) == 0); in main()
694 assert(m.str(0) == s); in main()
698 std::wcmatch m; in main() local
700 assert(std::regex_match(s, m, std::wregex(L"a"))); in main()
701 assert(m.size() == 1); in main()
702 assert(!m.empty()); in main()
703 assert(!m.prefix().matched); in main()
704 assert(m.prefix().first == s); in main()
705 assert(m.prefix().second == m[0].first); in main()
706 assert(!m.suffix().matched); in main()
707 assert(m.suffix().first == m[0].second); in main()
708 assert(m.suffix().second == s+1); in main()
709 assert(m.length(0) == 1); in main()
710 assert(m.position(0) == 0); in main()
711 assert(m.str(0) == L"a"); in main()
714 std::wcmatch m; in main() local
716 assert(std::regex_match(s, m, std::wregex(L"ab"))); in main()
717 assert(m.size() == 1); in main()
718 assert(!m.prefix().matched); in main()
719 assert(m.prefix().first == s); in main()
720 assert(m.prefix().second == m[0].first); in main()
721 assert(!m.suffix().matched); in main()
722 assert(m.suffix().first == m[0].second); in main()
723 assert(m.suffix().second == s+2); in main()
724 assert(m.length(0) == 2); in main()
725 assert(m.position(0) == 0); in main()
726 assert(m.str(0) == L"ab"); in main()
729 std::wcmatch m; in main() local
731 assert(!std::regex_match(s, m, std::wregex(L"ba"))); in main()
732 assert(m.size() == 0); in main()
733 assert(m.empty()); in main()
736 std::wcmatch m; in main() local
738 assert(!std::regex_match(s, m, std::wregex(L"ab"))); in main()
739 assert(m.size() == 0); in main()
742 std::wcmatch m; in main() local
744 assert(!std::regex_match(s, m, std::wregex(L"ab"), in main()
746 assert(m.size() == 0); in main()
749 std::wcmatch m; in main() local
751 assert(!std::regex_match(s, m, std::wregex(L"bc"))); in main()
752 assert(m.size() == 0); in main()
755 std::wcmatch m; in main() local
757 assert(std::regex_match(s, m, std::wregex(L"ab*c"))); in main()
758 assert(m.size() == 1); in main()
759 assert(!m.prefix().matched); in main()
760 assert(m.prefix().first == s); in main()
761 assert(m.prefix().second == m[0].first); in main()
762 assert(!m.suffix().matched); in main()
763 assert(m.suffix().first == m[0].second); in main()
764 assert(m.suffix().second == s+4); in main()
765 assert(m.length(0) == 4); in main()
766 assert(m.position(0) == 0); in main()
767 assert(m.str(0) == s); in main()
770 std::wcmatch m; in main() local
772 assert(std::regex_match(s, m, std::wregex(L"(ab)*c"))); in main()
773 assert(m.size() == 2); in main()
774 assert(!m.prefix().matched); in main()
775 assert(m.prefix().first == s); in main()
776 assert(m.prefix().second == m[0].first); in main()
777 assert(!m.suffix().matched); in main()
778 assert(m.suffix().first == m[0].second); in main()
779 assert(m.suffix().second == s+5); in main()
780 assert(m.length(0) == 5); in main()
781 assert(m.position(0) == 0); in main()
782 assert(m.str(0) == s); in main()
783 assert(m.length(1) == 2); in main()
784 assert(m.position(1) == 2); in main()
785 assert(m.str(1) == L"ab"); in main()
788 std::wcmatch m; in main() local
790 assert(!std::regex_match(s, m, std::wregex(L"cd((e)fg)hi"))); in main()
791 assert(m.size() == 0); in main()
794 std::wcmatch m; in main() local
796 assert(std::regex_match(s, m, std::wregex(L"^abc"))); in main()
797 assert(m.size() == 1); in main()
798 assert(!m.prefix().matched); in main()
799 assert(m.prefix().first == s); in main()
800 assert(m.prefix().second == m[0].first); in main()
801 assert(!m.suffix().matched); in main()
802 assert(m.suffix().first == m[0].second); in main()
803 assert(m.suffix().second == s+3); in main()
804 assert(m.length(0) == 3); in main()
805 assert(m.position(0) == 0); in main()
806 assert(m.str(0) == s); in main()
809 std::wcmatch m; in main() local
811 assert(!std::regex_match(s, m, std::wregex(L"^abc"))); in main()
812 assert(m.size() == 0); in main()
815 std::wcmatch m; in main() local
817 assert(!std::regex_match(s, m, std::wregex(L"^abc"))); in main()
818 assert(m.size() == 0); in main()
821 std::wcmatch m; in main() local
823 assert(std::regex_match(s, m, std::wregex(L"abc$"))); in main()
824 assert(m.size() == 1); in main()
825 assert(!m.prefix().matched); in main()
826 assert(m.prefix().first == s); in main()
827 assert(m.prefix().second == m[0].first); in main()
828 assert(!m.suffix().matched); in main()
829 assert(m.suffix().first == m[0].second); in main()
830 assert(m.suffix().second == s+3); in main()
831 assert(m.length(0) == 3); in main()
832 assert(m.position(0) == 0); in main()
833 assert(m.str(0) == s); in main()
836 std::wcmatch m; in main() local
838 assert(!std::regex_match(s, m, std::wregex(L"abc$"))); in main()
839 assert(m.size() == 0); in main()
842 std::wcmatch m; in main() local
844 assert(!std::regex_match(s, m, std::wregex(L"abc$"))); in main()
845 assert(m.size() == 0); in main()
848 std::wcmatch m; in main() local
850 assert(std::regex_match(s, m, std::wregex(L"a.c"))); in main()
851 assert(m.size() == 1); in main()
852 assert(!m.prefix().matched); in main()
853 assert(m.prefix().first == s); in main()
854 assert(m.prefix().second == m[0].first); in main()
855 assert(!m.suffix().matched); in main()
856 assert(m.suffix().first == m[0].second); in main()
857 assert(m.suffix().second == s+3); in main()
858 assert(m.length(0) == 3); in main()
859 assert(m.position(0) == 0); in main()
860 assert(m.str(0) == s); in main()
863 std::wcmatch m; in main() local
865 assert(std::regex_match(s, m, std::wregex(L"a.c"))); in main()
866 assert(m.size() == 1); in main()
867 assert(!m.prefix().matched); in main()
868 assert(m.prefix().first == s); in main()
869 assert(m.prefix().second == m[0].first); in main()
870 assert(!m.suffix().matched); in main()
871 assert(m.suffix().first == m[0].second); in main()
872 assert(m.suffix().second == s+3); in main()
873 assert(m.length(0) == 3); in main()
874 assert(m.position(0) == 0); in main()
875 assert(m.str(0) == s); in main()
878 std::wcmatch m; in main() local
880 assert(std::regex_match(s, m, std::wregex(L"a.c"))); in main()
881 assert(m.size() == 1); in main()
882 assert(!m.prefix().matched); in main()
883 assert(m.prefix().first == s); in main()
884 assert(m.prefix().second == m[0].first); in main()
885 assert(!m.suffix().matched); in main()
886 assert(m.suffix().first == m[0].second); in main()
887 assert(m.suffix().second == s+3); in main()
888 assert(m.length(0) == 3); in main()
889 assert(m.position(0) == 0); in main()
890 assert(m.str(0) == s); in main()
893 std::wcmatch m; in main() local
895 assert(std::regex_match(s, m, std::wregex(L"(.*).*"))); in main()
896 assert(m.size() == 2); in main()
897 assert(!m.prefix().matched); in main()
898 assert(m.prefix().first == s); in main()
899 assert(m.prefix().second == m[0].first); in main()
900 assert(!m.suffix().matched); in main()
901 assert(m.suffix().first == m[0].second); in main()
902 assert(m.suffix().second == s+6); in main()
903 assert(m.length(0) == 6); in main()
904 assert(m.position(0) == 0); in main()
905 assert(m.str(0) == s); in main()
906 assert(m.length(1) == 6); in main()
907 assert(m.position(1) == 0); in main()
908 assert(m.str(1) == s); in main()
911 std::wcmatch m; in main() local
913 assert(!std::regex_match(s, m, std::wregex(L"(a*)*"))); in main()
914 assert(m.size() == 0); in main()
917 std::wcmatch m; in main() local
919 assert(!std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
920 assert(m.size() == 0); in main()
923 std::wcmatch m; in main() local
925 assert(std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
926 assert(m.size() == 1); in main()
927 assert(!m.prefix().matched); in main()
928 assert(m.prefix().first == s); in main()
929 assert(m.prefix().second == m[0].first); in main()
930 assert(!m.suffix().matched); in main()
931 assert(m.suffix().first == m[0].second); in main()
932 assert(m.suffix().second == m[0].second); in main()
933 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
934 assert(m.position(0) == 0); in main()
935 assert(m.str(0) == s); in main()
938 std::wcmatch m; in main() local
940 assert(std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
941 assert(m.size() == 1); in main()
942 assert(!m.prefix().matched); in main()
943 assert(m.prefix().first == s); in main()
944 assert(m.prefix().second == m[0].first); in main()
945 assert(!m.suffix().matched); in main()
946 assert(m.suffix().first == m[0].second); in main()
947 assert(m.suffix().second == m[0].second); in main()
948 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
949 assert(m.position(0) == 0); in main()
950 assert(m.str(0) == s); in main()
953 std::wcmatch m; in main() local
955 assert(std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
956 assert(m.size() == 1); in main()
957 assert(!m.prefix().matched); in main()
958 assert(m.prefix().first == s); in main()
959 assert(m.prefix().second == m[0].first); in main()
960 assert(!m.suffix().matched); in main()
961 assert(m.suffix().first == m[0].second); in main()
962 assert(m.suffix().second == m[0].second); in main()
963 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
964 assert(m.position(0) == 0); in main()
965 assert(m.str(0) == s); in main()
968 std::wcmatch m; in main() local
970 assert(!std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
971 assert(m.size() == 0); in main()
974 std::wcmatch m; in main() local
976 assert(!std::regex_match(s, m, std::wregex(L"ab{3,5}c"))); in main()
977 assert(m.size() == 0); in main()
980 std::wcmatch m; in main() local
982 assert(!std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
983 assert(m.size() == 0); in main()
986 std::wcmatch m; in main() local
988 assert(std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
989 assert(m.size() == 1); in main()
990 assert(!m.prefix().matched); in main()
991 assert(m.prefix().first == s); in main()
992 assert(m.prefix().second == m[0].first); in main()
993 assert(!m.suffix().matched); in main()
994 assert(m.suffix().first == m[0].second); in main()
995 assert(m.suffix().second == m[0].second); in main()
996 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
997 assert(m.position(0) == 0); in main()
998 assert(m.str(0) == s); in main()
1001 std::wcmatch m; in main() local
1003 assert(std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
1004 assert(m.size() == 1); in main()
1005 assert(!m.prefix().matched); in main()
1006 assert(m.prefix().first == s); in main()
1007 assert(m.prefix().second == m[0].first); in main()
1008 assert(!m.suffix().matched); in main()
1009 assert(m.suffix().first == m[0].second); in main()
1010 assert(m.suffix().second == m[0].second); in main()
1011 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1012 assert(m.position(0) == 0); in main()
1013 assert(m.str(0) == s); in main()
1016 std::wcmatch m; in main() local
1018 assert(std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
1019 assert(m.size() == 1); in main()
1020 assert(!m.prefix().matched); in main()
1021 assert(m.prefix().first == s); in main()
1022 assert(m.prefix().second == m[0].first); in main()
1023 assert(!m.suffix().matched); in main()
1024 assert(m.suffix().first == m[0].second); in main()
1025 assert(m.suffix().second == m[0].second); in main()
1026 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1027 assert(m.position(0) == 0); in main()
1028 assert(m.str(0) == s); in main()
1031 std::wcmatch m; in main() local
1033 assert(!std::regex_match(s, m, std::wregex(L"a.{3,5}c"))); in main()
1034 assert(m.size() == 0); in main()
1037 std::wcmatch m; in main() local
1039 assert(!std::regex_match(s, m, std::wregex(L"tour|to|tournament"))); in main()
1040 assert(m.size() == 0); in main()
1043 std::wcmatch m; in main() local
1045 assert(!std::regex_match(s, m, std::wregex(L"(tour|to|tournament)+", in main()
1047 assert(m.size() == 0); in main()
1050 std::wcmatch m; in main() local
1052 assert(std::regex_match(s, m, std::wregex(L"(tour|to|t)+"))); in main()
1053 assert(m.size() == 2); in main()
1054 assert(!m.prefix().matched); in main()
1055 assert(m.prefix().first == s); in main()
1056 assert(m.prefix().second == m[0].first); in main()
1057 assert(!m.suffix().matched); in main()
1058 assert(m.suffix().first == m[0].second); in main()
1059 assert(m.suffix().second == m[0].second); in main()
1060 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1061 assert(m.position(0) == 0); in main()
1062 assert(m.str(0) == s); in main()
1063 assert(m.length(1) == 4); in main()
1064 assert(m.position(1) == 3); in main()
1065 assert(m.str(1) == L"tour"); in main()
1068 std::wcmatch m; in main() local
1070 assert(!std::regex_match(s, m, std::wregex(L"-(.*),\1-"))); in main()
1071 assert(m.size() == 0); in main()
1074 std::wcmatch m; in main() local
1076 assert(std::regex_match(s, m, std::wregex(L"-.*,.*-"))); in main()
1077 assert(m.size() == 1); in main()
1078 assert(!m.prefix().matched); in main()
1079 assert(m.prefix().first == s); in main()
1080 assert(m.prefix().second == m[0].first); in main()
1081 assert(!m.suffix().matched); in main()
1082 assert(m.suffix().first == m[0].second); in main()
1083 assert(m.suffix().second == m[0].second); in main()
1084 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1085 assert(m.position(0) == 0); in main()
1086 assert(m.str(0) == s); in main()
1089 std::wcmatch m; in main() local
1091 assert(std::regex_match(s, m, std::wregex(L"^[a]$"))); in main()
1092 assert(m.size() == 1); in main()
1093 assert(!m.prefix().matched); in main()
1094 assert(m.prefix().first == s); in main()
1095 assert(m.prefix().second == m[0].first); in main()
1096 assert(!m.suffix().matched); in main()
1097 assert(m.suffix().first == m[0].second); in main()
1098 assert(m.suffix().second == m[0].second); in main()
1099 assert(m.length(0) == 1); in main()
1100 assert(m.position(0) == 0); in main()
1101 assert(m.str(0) == L"a"); in main()
1104 std::wcmatch m; in main() local
1106 assert(std::regex_match(s, m, std::wregex(L"^[ab]$"))); in main()
1107 assert(m.size() == 1); in main()
1108 assert(!m.prefix().matched); in main()
1109 assert(m.prefix().first == s); in main()
1110 assert(m.prefix().second == m[0].first); in main()
1111 assert(!m.suffix().matched); in main()
1112 assert(m.suffix().first == m[0].second); in main()
1113 assert(m.suffix().second == m[0].second); in main()
1114 assert(m.length(0) == 1); in main()
1115 assert(m.position(0) == 0); in main()
1116 assert(m.str(0) == L"a"); in main()
1119 std::wcmatch m; in main() local
1121 assert(std::regex_match(s, m, std::wregex(L"^[a-f]$"))); in main()
1122 assert(m.size() == 1); in main()
1123 assert(!m.prefix().matched); in main()
1124 assert(m.prefix().first == s); in main()
1125 assert(m.prefix().second == m[0].first); in main()
1126 assert(!m.suffix().matched); in main()
1127 assert(m.suffix().first == m[0].second); in main()
1128 assert(m.suffix().second == m[0].second); in main()
1129 assert(m.length(0) == 1); in main()
1130 assert(m.position(0) == 0); in main()
1131 assert(m.str(0) == s); in main()
1134 std::wcmatch m; in main() local
1136 assert(!std::regex_match(s, m, std::wregex(L"^[a-f]$"))); in main()
1137 assert(m.size() == 0); in main()
1140 std::wcmatch m; in main() local
1142 assert(!std::regex_match(s, m, std::wregex(L"q[^u]"))); in main()
1143 assert(m.size() == 0); in main()
1146 std::wcmatch m; in main() local
1148 assert(!std::regex_match(s, m, std::wregex(L"q[^u]"))); in main()
1149 assert(m.size() == 0); in main()
1152 std::wcmatch m; in main() local
1154 assert(std::regex_match(s, m, std::wregex(L"A[[:lower:]]B"))); in main()
1155 assert(m.size() == 1); in main()
1156 assert(!m.prefix().matched); in main()
1157 assert(m.prefix().first == s); in main()
1158 assert(m.prefix().second == m[0].first); in main()
1159 assert(!m.suffix().matched); in main()
1160 assert(m.suffix().first == m[0].second); in main()
1161 assert(m.suffix().second == m[0].second); in main()
1162 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1163 assert(m.position(0) == 0); in main()
1164 assert(m.str(0) == s); in main()
1167 std::wcmatch m; in main() local
1169 assert(!std::regex_match(s, m, std::wregex(L"A[[:lower:]]B"))); in main()
1170 assert(m.size() == 0); in main()
1173 std::wcmatch m; in main() local
1175 assert(std::regex_match(s, m, std::wregex(L"A[^[:lower:]]B"))); in main()
1176 assert(m.size() == 1); in main()
1177 assert(!m.prefix().matched); in main()
1178 assert(m.prefix().first == s); in main()
1179 assert(m.prefix().second == m[0].first); in main()
1180 assert(!m.suffix().matched); in main()
1181 assert(m.suffix().first == m[0].second); in main()
1182 assert(m.suffix().second == m[0].second); in main()
1183 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1184 assert(m.position(0) == 0); in main()
1185 assert(m.str(0) == s); in main()
1188 std::wcmatch m; in main() local
1190 assert(!std::regex_match(s, m, std::wregex(L"A[^[:lower:]]B"))); in main()
1191 assert(m.size() == 0); in main()
1194 std::wcmatch m; in main() local
1196 assert(!std::regex_match(s, m, std::wregex(L"A[^[:lower:]0-9]B"))); in main()
1197 assert(m.size() == 0); in main()
1200 std::wcmatch m; in main() local
1202 assert(std::regex_match(s, m, std::wregex(L"A[^[:lower:]0-9]B"))); in main()
1203 assert(m.size() == 1); in main()
1204 assert(!m.prefix().matched); in main()
1205 assert(m.prefix().first == s); in main()
1206 assert(m.prefix().second == m[0].first); in main()
1207 assert(!m.suffix().matched); in main()
1208 assert(m.suffix().first == m[0].second); in main()
1209 assert(m.suffix().second == m[0].second); in main()
1210 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1211 assert(m.position(0) == 0); in main()
1212 assert(m.str(0) == s); in main()
1215 std::wcmatch m; in main() local
1217 assert(std::regex_match(s, m, std::wregex(L"[a[.hyphen.]z]"))); in main()
1218 assert(m.size() == 1); in main()
1219 assert(!m.prefix().matched); in main()
1220 assert(m.prefix().first == s); in main()
1221 assert(m.prefix().second == m[0].first); in main()
1222 assert(!m.suffix().matched); in main()
1223 assert(m.suffix().first == m[0].second); in main()
1224 assert(m.suffix().second == m[0].second); in main()
1225 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1226 assert(m.position(0) == 0); in main()
1227 assert(m.str(0) == s); in main()
1230 std::wcmatch m; in main() local
1232 assert(std::regex_match(s, m, std::wregex(L"[a[.hyphen.]z]"))); in main()
1233 assert(m.size() == 1); in main()
1234 assert(!m.prefix().matched); in main()
1235 assert(m.prefix().first == s); in main()
1236 assert(m.prefix().second == m[0].first); in main()
1237 assert(!m.suffix().matched); in main()
1238 assert(m.suffix().first == m[0].second); in main()
1239 assert(m.suffix().second == m[0].second); in main()
1240 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1241 assert(m.position(0) == 0); in main()
1242 assert(m.str(0) == s); in main()
1245 std::wcmatch m; in main() local
1247 assert(!std::regex_match(s, m, std::wregex(L"[a[.hyphen.]z]"))); in main()
1248 assert(m.size() == 0); in main()
1252 std::wcmatch m; in main() local
1254 assert(std::regex_match(s, m, std::wregex(L"[a[=M=]z]"))); in main()
1255 assert(m.size() == 1); in main()
1256 assert(!m.prefix().matched); in main()
1257 assert(m.prefix().first == s); in main()
1258 assert(m.prefix().second == m[0].first); in main()
1259 assert(!m.suffix().matched); in main()
1260 assert(m.suffix().first == m[0].second); in main()
1261 assert(m.suffix().second == m[0].second); in main()
1262 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1263 assert(m.position(0) == 0); in main()
1264 assert(m.str(0) == s); in main()
1267 std::wcmatch m; in main() local
1269 assert(std::regex_match(s, m, std::wregex(L"[a[.ch.]z]", in main()
1271 assert(m.size() == 1); in main()
1272 assert(!m.prefix().matched); in main()
1273 assert(m.prefix().first == s); in main()
1274 assert(m.prefix().second == m[0].first); in main()
1275 assert(!m.suffix().matched); in main()
1276 assert(m.suffix().first == m[0].second); in main()
1277 assert(m.suffix().second == m[0].second); in main()
1278 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1279 assert(m.position(0) == 0); in main()
1280 assert(m.str(0) == s); in main()
1284 std::wcmatch m; in main() local
1286 assert(!std::regex_match(s, m, std::wregex(L"[a[=M=]z]"))); in main()
1287 assert(m.size() == 0); in main()
1290 std::wcmatch m; in main() local
1292 assert(!std::regex_match(s, m, std::wregex(L"[ace1-9]*"))); in main()
1293 assert(m.size() == 0); in main()
1296 std::wcmatch m; in main() local
1298 assert(!std::regex_match(s, m, std::wregex(L"[ace1-9]+"))); in main()
1299 assert(m.size() == 0); in main()
1307 std::match_results<BI> m; in main() local
1310 assert(std::regex_match(BI(s), BI(s+ss), m, regex)); in main()
1311 assert(m.size() == 1); in main()
1312 assert(!m.prefix().matched); in main()
1313 assert(m.prefix().first == BI(s)); in main()
1314 assert(m.prefix().second == m[0].first); in main()
1315 assert(!m.suffix().matched); in main()
1316 assert(m.suffix().first == m[0].second); in main()
1317 assert(m.suffix().second == m[0].second); in main()
1318 assert(m.length(0) == 4); in main()
1319 assert(m.position(0) == 0); in main()
1320 assert(m.str(0) == s); in main()
1323 std::wcmatch m; in main() local
1325 assert(!std::regex_match(s, m, std::wregex(L"Jeff(?=s\\b)"))); in main()
1326 assert(m.size() == 0); in main()
1329 std::wcmatch m; in main() local
1331 assert(!std::regex_match(s, m, std::wregex(L"Jeff(?!s\\b)"))); in main()
1332 assert(m.size() == 0); in main()
1335 std::wcmatch m; in main() local
1337 assert(std::regex_match(s, m, std::wregex(L"\\d[\\W]k"))); in main()
1338 assert(m.size() == 1); in main()
1339 assert(!m.prefix().matched); in main()
1340 assert(m.prefix().first == s); in main()
1341 assert(m.prefix().second == m[0].first); in main()
1342 assert(!m.suffix().matched); in main()
1343 assert(m.suffix().first == m[0].second); in main()
1344 assert(m.suffix().second == s + std::char_traits<wchar_t>::length(s)); in main()
1345 assert(m.length(0) == std::char_traits<wchar_t>::length(s)); in main()
1346 assert(m.position(0) == 0); in main()
1347 assert(m.str(0) == s); in main()