# Regular Expression Helper **Tier:** 2-Intermediate Regular Expressions should be a valuable part of any developers toolbox. They provide a concise way to describe a pattern that can be used to test, search, match, replace, or split the contents of a string. Regular Expressions provide functionality you might otherwise have to implement using loops and more lines of code. The Regular Expression Helper helps you learn more about Regular Expressions by building a useful tool you'll also be able to use to test expressions you use in your apps. ## User Stories - [ ] User can enter a regular expression. - [ ] User can enter a string the regular expression can be run against. - [ ] User can click a 'Run' button to test - [ ] User can see a warning message if no regular expression was entered. - [ ] User can see a warning message if no string was entered. - [ ] User can see the matching text highlighted indicating if `test()` was able to locate the pattern in the string. - [ ] User can see a message if none of the text was matched. ## Bonus features - [ ] User can select the flags (like 'g') to be used in the regular expression from a dropdown - global, case insensitive, multiline, sticky. - [ ] User can select the RegExp function to be applied from a dropdown - test, search, or match - [ ] User can see a message indicating the result of the selected RegExp function. - [ ] Developer can run automated tests using a testing framework such as [Jest](https://jestjs.io/) ## Useful links and resources - [Javascript RegExp](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp) - [Regular Expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions) ## Example projects - [RegExr](https://regexr.com/) - [Regular Expressions 101](https://regex101.com/)