The Rami and Jehad String Matching website contains information about string matching (also known as Pattern Matching). The string matching problem may define as finding one or more of the occurrences of a pattern P of length m in a text T of length n. It has been extensively studied, and many techniques and algorithms have been designed to solve this problem. These algorithms are mostly used in information retrieval, bibliographic search, molecular biology, and question answering applications.
In many information retrieval and text-editing applications, it is necessary to be able to locate quickly some or all occurrences of a user-specified pattern of words and phrases in a text. Moreover, string matching has many applications including database query, DNA and protein sequence analysis. Therefore, the efficiency of string matching has a great impact on the performance of these applications. Although data are memorized in various ways, text remains the main and most efficient form to exchange information. Basically, a string matching algorithm uses a window to scan the text. The size of this window is equal to the length of the pattern. It first aligns the left ends of the window and the text. Then it checks if the pattern occurs in the window (this specific work is called an attempt) and shifts the window to the right. It repeats the same procedure again until the right end of the window goes beyond the right end of the text. In our study, we proposed four new exact single pattern matching algorithms, FC-RJ, FLC-RJ, FMLC-RJ and ASCII-Based-RJ algorithms. Furthermore, a string matching tool (RJ-SMT) has been built, and the new algorithms, in addition to the Brute Force and Boyer-Moore algorithms, have been implemented, tested and compared in the tool. The experiments results of our study showed that the FC-RJ, FLC-RJ and FMLC-RJ algorithms outperformed the Brute Force algorithm, while the ASCII-Based-RJ algorithm outperformed both Brute Force and Boyer-Moore algorithms. From this site, you can download the RJ-SMT as an executable file, for using and testing. Thank you for visiting our website. Please click the link below and give us your comments.