{"id":20200195,"url":"https://github.com/Superb-Man/Regex-Parser","last_synced_at":"2025-05-07T06:31:03.221Z","repository":{"id":255743081,"uuid":"845073041","full_name":"Superb-Man/T-ReX","owner":"Superb-Man","description":"Can only parse a regex😔 and match some elementary operations🚀.Nothing fancy😭","archived":false,"fork":false,"pushed_at":"2024-09-12T09:46:01.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-09-12T20:56:14.167Z","etag":null,"topics":["parser"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Superb-Man.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-20T14:26:10.000Z","updated_at":"2024-09-12T09:46:04.000Z","dependencies_parsed_at":"2024-09-12T20:56:16.377Z","dependency_job_id":null,"html_url":"https://github.com/Superb-Man/T-ReX","commit_stats":null,"previous_names":["superb-man/regex-validator","superb-man/t-rex"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Superb-Man%2FT-ReX","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Superb-Man%2FT-ReX/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Superb-Man%2FT-ReX/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Superb-Man%2FT-ReX/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Superb-Man","download_url":"https://codeload.github.com/Superb-Man/T-ReX/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224568048,"owners_count":17332833,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["parser"],"created_at":"2024-11-14T04:42:20.404Z","updated_at":"2025-05-07T06:31:03.217Z","avatar_url":"https://github.com/Superb-Man.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Regex-Parser\n# Why did I try to implement it ?\nTo understand about parser/syntax tree\n\n```\nThe AstNode is not necessarily needed for validating regex only.\nNot all possible operations implemented\n\nDrawback - so many sequential nodes!\n\nFuture hope - Will try to implement the RegexMatcher later\n```\n# Description\nExtended work of Automaton- solver.Implemented a very basic regular expression parser. Although it doesn't support all the operations possible.Was motivated by regex matcher at linux system.Implementing full library by own is quite a complex task.Yet i gave a try and still i am working to improve.\n# Limitations\n```\n- Limitaions with multiple OR operations!\n- Doesn't support all\n```\n# The subset of regex it worked!\n        \"a.?b\",\n        \"a+b*(c+de)*f\",\n        \"a*b+c?(d+)?\",\n        \"a[a-zA-Z0-9.]\",\n        \"a*b+c?d*?xyz+\",\n        \"a(.6)*d\",\n        \"a[0-9]62\",\n        \"acd*b\",\n        cd \"a?b\",\n        \"a[a-z]b\",\n        \"a(.bc|c*)+\",\n        \"a([a-z].)*\",\n        \"a(.s|a)*62\",\n        \"[a-z]*b\",\n        \"a(.sb)*bc*\",\n        \"cd[a-z]|a(.bc)*b*\",\n        \"ad|(b|.c)*\",\n        \"a.?b\",\n        \"a(a|bc)*(bd|b)\",\n        \"aaab\",\n        \"b|bd\", /////////////////////////////DON'T WORK\n        \"a*(b|(cd+|e*f))bd\",\n        \"([0-9]|a*(b|(cd+|e*f)))bd\",\n        \"a.*b\",\n        \"a((.)*)bcd+(((c)d)e)\",\n        \"a.*b[0-9]+b+b*\",\n        \"a*a+\",\n        \"a.*b*cd+.*f\",\n        \"a(.bc)*d\",\n        \"a*b*.*g*.+\",\n        \"abcd+.*f\",\n        \"ab*b?c+.*f\",\n        \"a?ab\",\n        \"a*\",\n        \"a*[dzf]*dfb*\",\n        \"[a-c]+z\",\n        \"a+\",\n        \".*a+[s-v0-5]*bcd+e(a|b)*\",  ///////////WORKING\n        \".*a+.*bcd+e(a|b)*\", //////////WORKING\n        \"[a-c]+a[a-c]+\",\n        \".*a[a-c]+\",\n        \"abc[a-d]?.*abc\",\n        \"(ab*)*|b(c|d+)\",\n        \"a*|c*\",\n        \"(a|b)b\",\n        \"a.*[a-c]+d\",\n        \"a[a-c]+.*d\",\n        \"[a-c]+a*a+a\",\n        \".+ba\",\n        \"a(c|b)*abc\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSuperb-Man%2FRegex-Parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSuperb-Man%2FRegex-Parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSuperb-Man%2FRegex-Parser/lists"}