diff --git a/Projects/RegExp-Helper-App.md b/Projects/RegExp-Helper-App.md new file mode 100644 index 00000000..7e0b5b05 --- /dev/null +++ b/Projects/RegExp-Helper-App.md @@ -0,0 +1,40 @@ +# 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 by JavaScripts +RegExp object 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 a message indicating if `test()` was able to locate the pattern in the string. + +## 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/) diff --git a/README.md b/README.md index 372dc1b8..688d7c97 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,7 @@ required to complete them. | [Flashcards App](./Projects/FlashCards-App.md) | Review and test your knowledge through Flash Cards | 2-Intermediate | | [Markdown Previewer](./Projects/Markdown-Previewer.md) | Preview text formatted in GitHub flavored markdown | 2-Intermediate | | [Markdown Table Generator](./Projects/Markdown-Table-Generator.md) | Convert a table into Markdown-formatted text | 2-Intermediate | +| [Regular Expression Helper](./Projects/RegExp-Helper-App.md) | Test Regular Expressions | 2-Intermediate | | [Sports Bracket Generator](./Projects/Sports-Bracket-Generator.md) | Generate a sports bracket diagram | 2-Intermediate | | [String Art](./Projects/String-Art.md) | An animation of moving, colored strings | 2-Intermediate | | [Timezone Slackbot](./Projects/Timezone-Slackbot.md) | Display Team Timezones | 2-Intermediate |