Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- short-paperJune 2024
Demonstrating REmatch: A Novel RegEx Engine for Finding all Matches
SIGMOD/PODS '24: Companion of the 2024 International Conference on Management of DataPages 448–451https://doi.org/10.1145/3626246.3654746In this demonstration we showcase REmatch, a regular expression (RegEx) engine built to find all matches of a given pattern in a document. REmatch is based on the theory of enumeration algorithms, and it extends the capability of classical regex engines ...
- research-articleSeptember 2024
One Automaton to Rule Them All: Beyond Multiple Regular Expressions Execution
CGO '24: Proceedings of the 2024 IEEE/ACM International Symposium on Code Generation and OptimizationPages 193–206https://doi.org/10.1109/CGO57630.2024.10444810Regular Expressions (REs) matching is crucial to identify strings exhibiting certain morphological properties in a data stream, resulting paramount in contexts such as deep packet inspection in computer security and genome analysis in bioinformatics. Yet,...
- research-articleApril 2024
Regular Expressions on Modern GPGPUs
GPGPU '24: Proceedings of the 16th Workshop on General Purpose Processing Using GPUPages 26–32https://doi.org/10.1145/3649411.3649416Using GPUs is an effective way to accelerate regular expression (RE) matching, offering orders of magnitude faster processing than pure CPU approaches. Prior GPU-based RE acceleration methods, however, were developed on older GPU models and primarily ...
- research-articleJune 2023
Using Micro Parsons Problems to Scaffold the Learning of Regular Expressions
ITiCSE 2023: Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 1Pages 457–463https://doi.org/10.1145/3587102.3588853Regular expressions (regex) are a text processing method widely used in data analysis, web scraping, and input validation. However, students find regular expressions difficult to create since they use a terse language of characters. Parsons problems can ...
-
- research-articleJuly 2023
RexStepper: A Reference Debugger for JavaScript Regular Expressions
ICSE '23: Proceedings of the 45th International Conference on Software Engineering: Companion ProceedingsPages 41–45https://doi.org/10.1109/ICSE-Companion58688.2023.00021Regular expressions are notoriously difficult to get right, with developers often having to resort to trial-and-error approaches. Even so, little attention has been given by the research community to the development of effective debugging tools for ...
- ArticleApril 2023
Automated Grading of Regular Expressions
AbstractWith the rapid transition to distance learning, automatic grading software becomes more important to both teachers and students. We study the problem of automatically grading the regular expressions submitted by students in courses related to ...
On-the-fly syntax highlighting using neural networks
ESEC/FSE 2022: Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software EngineeringPages 269–280https://doi.org/10.1145/3540250.3549109With the presence of online collaborative tools for software developers, source code is shared and consulted frequently, from code viewers to merge requests and code snippets. Typically, code highlighting quality in such scenarios is sacrificed in ...
- ArticleAugust 2022
Union-Complexities of Kleene Plus Operation
AbstractUnion-free expressions are used in union normal form to decompose any regular language to a finite union of union-free languages. Based on the automata characterisation of the union-free languages, by restricting the 1CFPAs not to have transitions ...
- research-articleOctober 2022
Type-safe regular expressions
Regular expressions can easily go wrong. Capturing groups, in particular, require meticulous care to avoid running into off-by-one errors and null pointer exceptions. In this chapter, we propose a new design for Scala's regular expressions which ...
- research-articleOctober 2022
Write a line: tests with answer templates and string completion hints for self-learning in a CS1 course
ICSE-SEET '22: Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: Software Engineering Education and TrainingPages 265–276https://doi.org/10.1145/3510456.3514159One of the important tasks in learning programming is writing a line of code performing the necessary action. This allows students to practice skills in a playground with instant feedback before writing more complex programs and increases their ...
Exploiting input sanitization for regex denial of service
ICSE '22: Proceedings of the 44th International Conference on Software EngineeringPages 883–895https://doi.org/10.1145/3510003.3510047Web services use server-side input sanitization to guard against harmful input. Some web services publish their sanitization logic to make their client interface more usable, e.g., allowing clients to debug invalid requests locally. However, this ...
- research-articleSeptember 2021
CICERO: A Domain-Specific Architecture for Efficient Regular Expression Matching
ACM Transactions on Embedded Computing Systems (TECS), Volume 20, Issue 5sArticle No.: 51, Pages 1–24https://doi.org/10.1145/3476982Regular Expression (RE) matching is a computational kernel used in several applications. Since RE complexity and data volumes are steadily increasing, hardware acceleration is gaining attention also for this problem. Existing approaches have limited ...
- research-articleJanuary 2021
Cyclic proofs, system t, and the power of contraction
Proceedings of the ACM on Programming Languages (PACMPL), Volume 5, Issue POPLArticle No.: 1, Pages 1–28https://doi.org/10.1145/3434282We study a cyclic proof system C over regular expression types, inspired by linear logic and non-wellfounded proof theory. Proofs in C can be seen as strongly typed goto programs. We show that they denote computable total functions and we analyse the ...
- research-articleDecember 2020
Automated generation of oracled test cases with regular expressions and combinatorial techniques
Journal of Software: Evolution and Process (WSMR), Volume 32, Issue 12https://doi.org/10.1002/smr.2273AbstractOne of the main challenges of software testing research is the automated addition of oracles to the generated test cases: Whereas the automated generation of operation sequences (which is one of the essential components of test cases) is in ...
- abstractOctober 2020
Learn Regex: A Novel Tool for Learning Regular Expressions
SIGITE '20: Proceedings of the 21st Annual Conference on Information Technology EducationPage 293https://doi.org/10.1145/3368308.3415425Despite the importance of regular expressions (RE), the topic is often given scant attention. This work-in-progress describes Learn Regex (LR), a web-based app designed to teach RE. In a gamified atmosphere with a comic book aesthetic that is ...
- research-articleJuly 2020
A Complete Proof System for 1-Free Regular Expressions Modulo Bisimilarity
LICS '20: Proceedings of the 35th Annual ACM/IEEE Symposium on Logic in Computer SciencePages 465–478https://doi.org/10.1145/3373718.3394744Robin Milner (1984) gave a sound proof system for bisimilarity of regular expressions interpreted as processes: Basic Process Algebra with unary Kleene star iteration, deadlock 0, successful termination 1, and a fixed-point rule. He asked whether this ...
- research-articleFebruary 2020
Regexes are hard: decision-making, difficulties, and risks in programming regular expressions
ASE '19: Proceedings of the 34th IEEE/ACM International Conference on Automated Software EngineeringPages 415–426https://doi.org/10.1109/ASE.2019.00047Regular expressions (regexes) are a powerful mechanism for solving string-matching problems. They are supported by all modern programming languages, and have been estimated to appear in more than a third of Python and JavaScript projects. Yet existing ...
- short-paperNovember 2019
A notation-based query language for searching in symbolic music
DLfM '19: Proceedings of the 6th International Conference on Digital Libraries for MusicologyPages 79–83https://doi.org/10.1145/3358664.3358667Existing systems for searching in symbolic music corpora generally suffer from either of two limitations: they are either limited in power because they accept only simple search patterns, or they are hard for musicologists and musicians to use because ...
- research-articleJune 2019
Complexity Bounds for Relational Algebra over Document Spanners
PODS '19: Proceedings of the 38th ACM SIGMOD-SIGACT-SIGAI Symposium on Principles of Database SystemsPages 320–334https://doi.org/10.1145/3294052.3319699We investigate the complexity of evaluating queries in Relational Algebra (RA) over the relations extracted by regex formulas (i.e., regular expressions with capture variables) over text documents. Such queries, also known as the regular document ...