Quelle overlapping.toml
Sprache: unbekannt
|
|
Spracherkennung für: .toml vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
# NOTE: We define a number of tests where the *match* kind is 'leftmost-first'
# but the *search* kind is 'overlapping'. This is a somewhat nonsensical
# combination and can produce odd results. Nevertheless, those results should
# be consistent so we test them here. (At the time of writing this note, I
# hadn't yet decided whether to make 'leftmost-first' with 'overlapping' result
# in unspecified behavior.)
# This demonstrates how a full overlapping search is obvious quadratic. This
# regex reports a match for every substring in the haystack.
[[test]]
name = "ungreedy-dotstar-matches-everything- 100"
regex = [".*?"]
haystack = "zzz"
matches = [
{ id = 0, span = [ 0, 0] },
{ id = 0, span = [ 1, 1] },
{ id = 0, span = [ 0, 1] },
{ id = 0, span = [ 2, 2] },
{ id = 0, span = [ 1, 2] },
{ id = 0, span = [ 0, 2] },
{ id = 0, span = [ 3, 3] },
{ id = 0, span = [ 2, 3] },
{ id = 0, span = [ 1, 3] },
{ id = 0, span = [ 0, 3] },
]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "greedy-dotstar-matches-everything- 100"
regex = [".*"]
haystack = "zzz"
matches = [
{ id = 0, span = [ 0, 0] },
{ id = 0, span = [ 1, 1] },
{ id = 0, span = [ 0, 1] },
{ id = 0, span = [ 2, 2] },
{ id = 0, span = [ 1, 2] },
{ id = 0, span = [ 0, 2] },
{ id = 0, span = [ 3, 3] },
{ id = 0, span = [ 2, 3] },
{ id = 0, span = [ 1, 3] },
{ id = 0, span = [ 0, 3] },
]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "repetition-plus-leftmost-first- 100"
regex = 'a+'
haystack = "aaa"
matches = [[ 0, 1], [ 1, 2], [ 0, 2], [ 2, 3], [ 1, 3], [ 0, 3]]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "repetition-plus-leftmost-first- 110"
regex = '☃+'
haystack = "☃☃☃"
matches = [[ 0, 3], [ 3, 6], [ 0, 6], [ 6, 9], [ 3, 9], [ 0, 9]]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "repetition-plus-all- 100"
regex = 'a+'
haystack = "aaa"
matches = [[ 0, 1], [ 1, 2], [ 0, 2], [ 2, 3], [ 1, 3], [ 0, 3]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "repetition-plus-all- 110"
regex = '☃+'
haystack = "☃☃☃"
matches = [[ 0, 3], [ 3, 6], [ 0, 6], [ 6, 9], [ 3, 9], [ 0, 9]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "repetition-plus-leftmost-first- 200"
regex = '(abc)+'
haystack = "zzabcabczzabc"
matches = [
[[ 2, 5], [ 2, 5]],
[[ 5, 8], [ 5, 8]],
[[ 2, 8], [ 5, 8]],
]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "repetition-plus-all- 200"
regex = '(abc)+'
haystack = "zzabcabczzabc"
matches = [
[[ 2, 5], [ 2, 5]],
[[ 5, 8], [ 5, 8]],
[[ 2, 8], [ 5, 8]],
[[ 10, 13], [ 10, 13]],
]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "repetition-star-leftmost-first- 100"
regex = 'a*'
haystack = "aaa"
matches = [
[ 0, 0],
[ 1, 1],
[ 0, 1],
[ 2, 2],
[ 1, 2],
[ 0, 2],
[ 3, 3],
[ 2, 3],
[ 1, 3],
[ 0, 3],
]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "repetition-star-all- 100"
regex = 'a*'
haystack = "aaa"
matches = [
[ 0, 0],
[ 1, 1],
[ 0, 1],
[ 2, 2],
[ 1, 2],
[ 0, 2],
[ 3, 3],
[ 2, 3],
[ 1, 3],
[ 0, 3],
]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "repetition-star-leftmost-first- 200"
regex = '(abc)*'
haystack = "zzabcabczzabc"
matches = [
[[ 0, 0], []],
]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "repetition-star-all- 200"
regex = '(abc)*'
haystack = "zzabcabczzabc"
matches = [
[[ 0, 0], []],
[[ 1, 1], []],
[[ 2, 2], []],
[[ 3, 3], []],
[[ 4, 4], []],
[[ 5, 5], []],
[[ 2, 5], [ 2, 5]],
[[ 6, 6], []],
[[ 7, 7], []],
[[ 8, 8], []],
[[ 5, 8], [ 5, 8]],
[[ 2, 8], [ 5, 8]],
[[ 9, 9], []],
[[ 10, 10], []],
[[ 11, 11], []],
[[ 12, 12], []],
[[ 13, 13], []],
[[ 10, 13], [ 10, 13]],
]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "start-end-rep-leftmost-first"
regex = '(^$)*'
haystack = "abc"
matches = [
[[ 0, 0], []],
]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "start-end-rep-all"
regex = '(^$)*'
haystack = "abc"
matches = [
[[ 0, 0], []],
[[ 1, 1], []],
[[ 2, 2], []],
[[ 3, 3], []],
]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "alt-leftmost-first- 100"
regex = 'abc|a'
haystack = "zzabcazzaabc"
matches = [[ 2, 3], [ 2, 5]]
match-kind = "leftmost-first"
search-kind = "overlapping"
[[test]]
name = "alt-all- 100"
regex = 'abc|a'
haystack = "zzabcazzaabc"
matches = [[ 2, 3], [ 2, 5], [ 5, 6], [ 8, 9], [ 9, 10], [ 9, 12]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "empty- 000"
regex = ""
haystack = "abc"
matches = [[ 0, 0], [ 1, 1], [ 2, 2], [ 3, 3]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "empty-alt- 000"
regex = "|b"
haystack = "abc"
matches = [[ 0, 0], [ 1, 1], [ 2, 2], [ 1, 2], [ 3, 3]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "empty-alt- 010"
regex = "b|"
haystack = "abc"
matches = [[ 0, 0], [ 1, 1], [ 2, 2], [ 1, 2], [ 3, 3]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
# See: https://github.com/rust-lang/regex/issues/484
name = "iter1-bytes"
regex = ''
haystack = "☃"
matches = [[ 0, 0], [ 1, 1], [ 2, 2], [ 3, 3]]
utf8 = false
match-kind = "all"
search-kind = "overlapping"
[[test]]
# See: https://github.com/rust-lang/regex/issues/484
name = "iter1-utf8"
regex = ''
haystack = "☃"
matches = [[ 0, 0], [ 3, 3]]
match-kind = "all"
search-kind = "overlapping"
[[test]]
name = "iter1-incomplete-utf8"
regex = ''
haystack = '\xE2\x98' # incomplete snowman
matches = [[ 0, 0], [ 1, 1], [ 2, 2]]
match-kind = "all"
search-kind = "overlapping"
unescape = true
utf8 = false
[[test]]
name = "scratch"
regex = ['sam', 'samwise']
haystack = "samwise"
matches = [
{ id = 0, span = [ 0, 3] },
]
match-kind = "leftmost-first"
search-kind = "overlapping"
[Dauer der Verarbeitung: 0.14 Sekunden, vorverarbeitet 2026-06-07]
|
2026-06-09
|