regexp-examples 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. checksums.yaml +5 -13
  2. data/.gitignore +0 -1
  3. data/Gemfile +3 -0
  4. data/LICENSE.txt +1 -1
  5. data/README.md +9 -3
  6. data/Rakefile +7 -2
  7. data/coverage/.last_run.json +5 -0
  8. data/coverage/.resultset.json +667 -0
  9. data/coverage/.resultset.json.lock +0 -0
  10. data/coverage/assets/0.8.0/application.css +799 -0
  11. data/coverage/assets/0.8.0/application.js +1559 -0
  12. data/coverage/assets/0.8.0/colorbox/border.png +0 -0
  13. data/coverage/assets/0.8.0/colorbox/controls.png +0 -0
  14. data/coverage/assets/0.8.0/colorbox/loading.gif +0 -0
  15. data/coverage/assets/0.8.0/colorbox/loading_background.png +0 -0
  16. data/coverage/assets/0.8.0/favicon_green.png +0 -0
  17. data/coverage/assets/0.8.0/favicon_red.png +0 -0
  18. data/coverage/assets/0.8.0/favicon_yellow.png +0 -0
  19. data/coverage/assets/0.8.0/loading.gif +0 -0
  20. data/coverage/assets/0.8.0/magnify.png +0 -0
  21. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  22. data/coverage/assets/0.8.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  23. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  24. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  25. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  26. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  27. data/coverage/assets/0.8.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  28. data/coverage/assets/0.8.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  29. data/coverage/assets/0.8.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  30. data/coverage/assets/0.8.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  31. data/coverage/assets/0.8.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  32. data/coverage/assets/0.8.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  33. data/coverage/assets/0.8.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  34. data/coverage/coverage-badge.png +0 -0
  35. data/coverage/index.html +4176 -0
  36. data/lib/regexp-examples/constants.rb +7 -2
  37. data/lib/regexp-examples/groups.rb +0 -3
  38. data/lib/regexp-examples/helpers.rb +0 -13
  39. data/lib/regexp-examples/version.rb +1 -1
  40. data/spec/regexp-examples_spec.rb +6 -1
  41. data/spec/spec_helper.rb +12 -61
  42. metadata +39 -11
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- OWJkMDYzMDJhNjQ2ZWE1YmZjZjM4NWViMThmYWVmMjA0ODBkZmZhNg==
5
- data.tar.gz: !binary |-
6
- Yjk3YTM5ZjNiMTdkODEwNmVjZGM2YTMzMTMzODA3OTE5YWFiMjE5Zg==
2
+ SHA1:
3
+ metadata.gz: 9d9f8909766dfe6d25a9dba8e8afab9c0ec17cc9
4
+ data.tar.gz: b3f9c5eb18f275f48f7dbf86e38e1b93ead83cfc
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MDc5YTA3MTdkMWQ0MmQ4OTk5Mzg4MjRlMWNhOTUxMTA0NWZjZDY3MmY1ZDc5
10
- YjE2MWM3YTgxODgwZmFkYmEwMDY4MzdjZDg3OTQ1NWE5ZDFjNWE4NTIzYjhh
11
- OWY1OTk4ZWU3ODE2YWIxMTg2Mzg0ZmQxYjNkNzgzNjNmNzU1ZDU=
12
- data.tar.gz: !binary |-
13
- MTJiMjA3NjY5ZDk0ODJjNDVmYjk5ZjczNjU5MDk4OGQ1N2NjZWNhODFiNDVj
14
- Y2IxZGFmYzZhMzgzYTZhOTdiNDYwYWM4YzA0NDg3NmM1YzIwOWE5ZTc2ODNl
15
- ZGMzMTdlZjhiYTY2NDI4NGIwNTVlOWViYjhjYzNmMmNlMGUxNGQ=
6
+ metadata.gz: 9aa083eb1184a282c07ab8b909c1bba7d46ded2ee754d3481724ace2b65f7c2a3cb15cb8b6e1ddec2f71d14bed19ad69f3f7acb54148859b4ca48b876ec93e51
7
+ data.tar.gz: 635d278c451535dba1f16fcb51d1bb4d35de4a0c09f2348e5c7d8549bb459067e20064e3529dae4616d27838811859ca8ab10b036d6fce5406b7615d6e18345a
data/.gitignore CHANGED
@@ -2,7 +2,6 @@
2
2
  /.yardoc
3
3
  /Gemfile.lock
4
4
  /_yardoc/
5
- /coverage/
6
5
  /doc/
7
6
  /pkg/
8
7
  /spec/reports/
data/Gemfile CHANGED
@@ -1,6 +1,9 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gem 'rspec', group: :test
4
+ gem 'simplecov', require: false, group: :test
5
+ gem 'simplecov-badge', require: false, group: :test
6
+ gem 'pry', group: :test
4
7
 
5
8
  # Specify your gem's dependencies in regexp-examples.gemspec
6
9
  gemspec
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2014 TODO: Write your name
1
+ Copyright (c) 2014 Tom Lord
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # regexp-examples
2
2
  [![Gem Version](https://badge.fury.io/rb/regexp-examples.svg)](http://badge.fury.io/rb/regexp-examples)
3
+ [![Build Status](https://travis-ci.org/tom-lord/regexp-examples.svg?branch=master)](https://travis-ci.org/tom-lord/regexp-examples/builds)
4
+ ![Code Coverage](coverage/coverage-badge.png)
3
5
 
4
6
  Extends the Regexp class with the method: Regexp#examples
5
7
 
@@ -31,19 +33,23 @@ or a huge number of possible matches, such as `/.\w/`, then only a subset of the
31
33
  * Escaped characters, e.g. `/\n/`, `/\w/`, `/\D/` (and so on...)
32
34
  * Non-capture groups, e.g. `/(?:foo)/`
33
35
  * Capture groups, e.g. `/(group)/`
34
- * Including named groups, e.g. `/?(<name>group)/`
36
+ * Including named groups, e.g. `/(?<name>group)/`
35
37
  * ...And backreferences(!!!), e.g. `/(this|that) \1/` `/(?<name>foo) \k<name>/`
36
38
  * Groups work fine, even if nested! e.g. `/(even(this(works?))) \1 \2 \3/`
37
39
  * **Arbitrarily complex combinations of all the above!**
38
40
 
39
41
  ## Not-Yet-Supported syntax
40
42
 
41
- I plan to add the following features to the gem (in order of most -> least likely), but have not yet got round to it:
43
+ I plan to add the following features to the gem, but have not yet got round to it:
42
44
 
43
45
  * Throw exceptions if illegal syntax (see below) is used
44
46
  * POSIX bracket expressions, e.g. `/[[:alnum:]]/`, `/[[:space:]]/`
45
47
  * Options, e.g. `/pattern/i`, `/foo.*bar/m`
46
- * Unicode characters, e.g. `/\p{L}/`, `/\p{Arabic}/`
48
+ * Escape sequences, e.g. `/\xa1/`
49
+ * Unicode characters, e.g. `/\u06E9/`
50
+ * Named properties, e.g. `/\p{L}/` ("Letter"), `/\p{Arabic}/` ("Arabic character"), `/\p{^Ll}/` ("Not a lowercase letter")
51
+ * Control characters, e.g. `/\cA/` ... `/\cZ/`
52
+ * Subexpression calls, e.g. `/(?<name> ... \g<name>* )/` (Note: These could get _really_ ugly to implement, and may even be impossible, so I highly doubt it's worth the effort!)
47
53
 
48
54
  ## Impossible features ("illegal syntax")
49
55
 
data/Rakefile CHANGED
@@ -1,2 +1,7 @@
1
- require "bundler/gem_tasks"
2
-
1
+ require 'rake'
2
+ require 'rspec/core/rake_task'
3
+ require 'bundler/gem_tasks'
4
+
5
+ RSpec::Core::RakeTask.new(:spec)
6
+
7
+ task :default => :spec
@@ -0,0 +1,5 @@
1
+ {
2
+ "result": {
3
+ "covered_percent": 100.0
4
+ }
5
+ }
@@ -0,0 +1,667 @@
1
+ {
2
+ "RSpec": {
3
+ "coverage": {
4
+ "/home/tom/regexp-examples/lib/regexp-examples.rb": [
5
+ 9,
6
+ null
7
+ ],
8
+ "/home/tom/regexp-examples/lib/regexp-examples/helpers.rb": [
9
+ 1,
10
+ null,
11
+ null,
12
+ null,
13
+ null,
14
+ null,
15
+ null,
16
+ null,
17
+ null,
18
+ 1,
19
+ 271,
20
+ 271,
21
+ 164,
22
+ 237,
23
+ 73,
24
+ null,
25
+ 164,
26
+ null,
27
+ null,
28
+ null,
29
+ null,
30
+ 1,
31
+ 164,
32
+ 164,
33
+ 328,
34
+ null,
35
+ null,
36
+ null,
37
+ 164,
38
+ 123,
39
+ null,
40
+ 41,
41
+ null,
42
+ null,
43
+ null,
44
+ null
45
+ ],
46
+ "/home/tom/regexp-examples/lib/regexp-examples/parser.rb": [
47
+ 1,
48
+ 1,
49
+ 1,
50
+ 1,
51
+ 54,
52
+ 54,
53
+ 54,
54
+ null,
55
+ null,
56
+ 1,
57
+ 101,
58
+ 101,
59
+ 312,
60
+ 312,
61
+ 271,
62
+ 271,
63
+ 271,
64
+ null,
65
+ 101,
66
+ null,
67
+ null,
68
+ 1,
69
+ null,
70
+ 1,
71
+ 312,
72
+ 312,
73
+ null,
74
+ 41,
75
+ null,
76
+ 41,
77
+ null,
78
+ 14,
79
+ null,
80
+ 1,
81
+ null,
82
+ 6,
83
+ null,
84
+ 36,
85
+ null,
86
+ 173,
87
+ null,
88
+ 312,
89
+ null,
90
+ null,
91
+ 1,
92
+ 36,
93
+ null,
94
+ null,
95
+ 19,
96
+ 19,
97
+ null,
98
+ 1,
99
+ 1,
100
+ null,
101
+ 14,
102
+ null,
103
+ null,
104
+ null,
105
+ null,
106
+ 2,
107
+ null,
108
+ 36,
109
+ 36,
110
+ null,
111
+ null,
112
+ 1,
113
+ 271,
114
+ 271,
115
+ null,
116
+ 5,
117
+ null,
118
+ 4,
119
+ null,
120
+ 11,
121
+ null,
122
+ 4,
123
+ null,
124
+ 247,
125
+ null,
126
+ 271,
127
+ null,
128
+ null,
129
+ 1,
130
+ 41,
131
+ 41,
132
+ 41,
133
+ 41,
134
+ null,
135
+ null,
136
+ 38,
137
+ null,
138
+ 1,
139
+ 1,
140
+ null,
141
+ null,
142
+ null,
143
+ null,
144
+ null,
145
+ 2,
146
+ 2,
147
+ 41,
148
+ null,
149
+ 41,
150
+ 41,
151
+ null,
152
+ null,
153
+ 1,
154
+ 41,
155
+ null,
156
+ null,
157
+ 1,
158
+ 14,
159
+ 14,
160
+ 14,
161
+ null,
162
+ null,
163
+ 1,
164
+ 1,
165
+ null,
166
+ null,
167
+ 14,
168
+ null,
169
+ null,
170
+ null,
171
+ null,
172
+ 41,
173
+ 41,
174
+ null,
175
+ 14,
176
+ null,
177
+ null,
178
+ 1,
179
+ 1,
180
+ null,
181
+ null,
182
+ 1,
183
+ 6,
184
+ 6,
185
+ 6,
186
+ null,
187
+ null,
188
+ null,
189
+ 1,
190
+ 175,
191
+ null,
192
+ null,
193
+ 1,
194
+ 20,
195
+ null,
196
+ null,
197
+ 1,
198
+ 5,
199
+ 5,
200
+ null,
201
+ null,
202
+ 1,
203
+ 4,
204
+ 4,
205
+ null,
206
+ null,
207
+ 1,
208
+ 11,
209
+ 11,
210
+ null,
211
+ null,
212
+ 1,
213
+ 4,
214
+ 4,
215
+ 4,
216
+ 4,
217
+ 4,
218
+ 4,
219
+ null,
220
+ null,
221
+ 1,
222
+ 247,
223
+ null,
224
+ null,
225
+ 1,
226
+ 98,
227
+ null,
228
+ null,
229
+ null,
230
+ null
231
+ ],
232
+ "/home/tom/regexp-examples/lib/regexp-examples/constants.rb": [
233
+ 1,
234
+ null,
235
+ 1,
236
+ null,
237
+ null,
238
+ null,
239
+ null,
240
+ null,
241
+ 1,
242
+ null,
243
+ 1,
244
+ 1,
245
+ 1,
246
+ 1,
247
+ null,
248
+ null,
249
+ 39,
250
+ 1,
251
+ 1,
252
+ null,
253
+ null,
254
+ null,
255
+ 1,
256
+ null,
257
+ null,
258
+ null,
259
+ 32,
260
+ null,
261
+ null,
262
+ null,
263
+ null,
264
+ null,
265
+ null,
266
+ null,
267
+ null,
268
+ null,
269
+ null,
270
+ null,
271
+ null,
272
+ null,
273
+ null,
274
+ null
275
+ ],
276
+ "/home/tom/regexp-examples/lib/regexp-examples/backreferences.rb": [
277
+ 1,
278
+ 1,
279
+ 1,
280
+ 1,
281
+ 248,
282
+ 248,
283
+ 248,
284
+ null,
285
+ null,
286
+ 1,
287
+ 168,
288
+ null,
289
+ null,
290
+ null,
291
+ 1,
292
+ 79,
293
+ null,
294
+ null,
295
+ 1,
296
+ 28,
297
+ null,
298
+ null,
299
+ null,
300
+ 1,
301
+ 1,
302
+ 54,
303
+ 148,
304
+ 130,
305
+ null,
306
+ 18,
307
+ 112,
308
+ 28,
309
+ null,
310
+ null,
311
+ null,
312
+ null,
313
+ 54,
314
+ null,
315
+ null,
316
+ 1,
317
+ 1,
318
+ 28,
319
+ 75,
320
+ 74,
321
+ 77,
322
+ null,
323
+ null,
324
+ null,
325
+ null,
326
+ null,
327
+ null,
328
+ null
329
+ ],
330
+ "/home/tom/regexp-examples/lib/regexp-examples/repeaters.rb": [
331
+ 1,
332
+ 1,
333
+ 1,
334
+ 1,
335
+ 271,
336
+ null,
337
+ null,
338
+ 1,
339
+ 271,
340
+ 271,
341
+ 271,
342
+ 299,
343
+ 413,
344
+ null,
345
+ null,
346
+ 271,
347
+ null,
348
+ null,
349
+ null,
350
+ 1,
351
+ 1,
352
+ 247,
353
+ null,
354
+ null,
355
+ 1,
356
+ 247,
357
+ null,
358
+ null,
359
+ null,
360
+ 1,
361
+ 1,
362
+ 5,
363
+ null,
364
+ null,
365
+ 1,
366
+ 5,
367
+ null,
368
+ null,
369
+ null,
370
+ 1,
371
+ 1,
372
+ 4,
373
+ null,
374
+ null,
375
+ 1,
376
+ 4,
377
+ null,
378
+ null,
379
+ null,
380
+ 1,
381
+ 1,
382
+ 11,
383
+ null,
384
+ null,
385
+ 1,
386
+ 11,
387
+ null,
388
+ null,
389
+ null,
390
+ 1,
391
+ 1,
392
+ 4,
393
+ 4,
394
+ 4,
395
+ 1,
396
+ 3,
397
+ 1,
398
+ null,
399
+ 2,
400
+ null,
401
+ null,
402
+ null,
403
+ 1,
404
+ 4,
405
+ null,
406
+ null,
407
+ null,
408
+ null
409
+ ],
410
+ "/home/tom/regexp-examples/lib/regexp-examples/groups.rb": [
411
+ 1,
412
+ 1,
413
+ 1,
414
+ 175,
415
+ null,
416
+ 1,
417
+ 175,
418
+ null,
419
+ null,
420
+ null,
421
+ 1,
422
+ 1,
423
+ 28,
424
+ 28,
425
+ 1,
426
+ 1,
427
+ null,
428
+ 27,
429
+ null,
430
+ null,
431
+ 28,
432
+ 28,
433
+ null,
434
+ null,
435
+ 1,
436
+ null,
437
+ 28,
438
+ 28,
439
+ 28,
440
+ 28,
441
+ null,
442
+ 28,
443
+ 9,
444
+ null,
445
+ null,
446
+ 28,
447
+ 28,
448
+ null,
449
+ null,
450
+ 1,
451
+ 28,
452
+ 540,
453
+ 13,
454
+ 4,
455
+ null,
456
+ 2,
457
+ null,
458
+ 7,
459
+ null,
460
+ null,
461
+ null,
462
+ null,
463
+ null,
464
+ 1,
465
+ 28,
466
+ 1,
467
+ null,
468
+ 27,
469
+ null,
470
+ null,
471
+ null,
472
+ null,
473
+ 1,
474
+ 1,
475
+ 1,
476
+ null,
477
+ null,
478
+ null,
479
+ 1,
480
+ 1,
481
+ 1,
482
+ 41,
483
+ 41,
484
+ null,
485
+ null,
486
+ null,
487
+ null,
488
+ null,
489
+ 1,
490
+ 186,
491
+ 41,
492
+ 101,
493
+ 101,
494
+ null,
495
+ null,
496
+ null,
497
+ null,
498
+ 1,
499
+ null,
500
+ null,
501
+ 1,
502
+ 1,
503
+ 6,
504
+ 6,
505
+ null,
506
+ null,
507
+ 1,
508
+ 6,
509
+ 6,
510
+ null,
511
+ 6,
512
+ 6,
513
+ null,
514
+ 6,
515
+ null,
516
+ null,
517
+ null,
518
+ 1,
519
+ 1,
520
+ 1,
521
+ 20,
522
+ null,
523
+ null,
524
+ 1,
525
+ 20,
526
+ null,
527
+ null,
528
+ null,
529
+ null
530
+ ],
531
+ "/home/tom/regexp-examples/lib/regexp-examples/regexp_extensions.rb": [
532
+ 1,
533
+ 1,
534
+ 1,
535
+ 54,
536
+ null,
537
+ null,
538
+ 114,
539
+ 54,
540
+ 54,
541
+ null,
542
+ 54,
543
+ null,
544
+ null,
545
+ 1,
546
+ null,
547
+ null
548
+ ],
549
+ "/home/tom/regexp-examples/spec/regexp-examples_spec.rb": [
550
+ 1,
551
+ 1,
552
+ 7,
553
+ 54,
554
+ 54,
555
+ 54,
556
+ 202,
557
+ null,
558
+ null,
559
+ null,
560
+ null,
561
+ null,
562
+ null,
563
+ null,
564
+ null,
565
+ 1,
566
+ 1,
567
+ 1,
568
+ null,
569
+ null,
570
+ null,
571
+ null,
572
+ null,
573
+ null,
574
+ null,
575
+ null,
576
+ null,
577
+ null,
578
+ 1,
579
+ 1,
580
+ null,
581
+ null,
582
+ null,
583
+ null,
584
+ null,
585
+ null,
586
+ null,
587
+ 1,
588
+ 1,
589
+ null,
590
+ null,
591
+ null,
592
+ null,
593
+ null,
594
+ null,
595
+ null,
596
+ null,
597
+ null,
598
+ null,
599
+ null,
600
+ null,
601
+ null,
602
+ null,
603
+ null,
604
+ 1,
605
+ 1,
606
+ null,
607
+ null,
608
+ null,
609
+ null,
610
+ null,
611
+ null,
612
+ null,
613
+ null,
614
+ null,
615
+ null,
616
+ null,
617
+ null,
618
+ null,
619
+ 1,
620
+ 1,
621
+ null,
622
+ null,
623
+ null,
624
+ null,
625
+ null,
626
+ null,
627
+ null,
628
+ null,
629
+ null,
630
+ null,
631
+ null,
632
+ null,
633
+ null,
634
+ null,
635
+ null,
636
+ null,
637
+ null,
638
+ 1,
639
+ 1,
640
+ null,
641
+ null,
642
+ null,
643
+ null,
644
+ null,
645
+ null,
646
+ null,
647
+ null,
648
+ null,
649
+ 1,
650
+ null,
651
+ 1,
652
+ null,
653
+ null,
654
+ null,
655
+ null,
656
+ null,
657
+ null,
658
+ null,
659
+ null,
660
+ null,
661
+ null,
662
+ null
663
+ ]
664
+ },
665
+ "timestamp": 1421256443
666
+ }
667
+ }