Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possibly teach parentheses () for grouping #179

Open
ldko opened this issue Jan 26, 2021 · 1 comment
Open

Possibly teach parentheses () for grouping #179

ldko opened this issue Jan 26, 2021 · 1 comment

Comments

@ldko
Copy link
Contributor

ldko commented Jan 26, 2021

Currently the lesson doesn't teach parentheses for grouping parts of the regular expression. I think it would be worth adding this to the metacharacters taught in episode 1 because:

  1. They are commonly used in building regular expressions
  2. The introduction about regular expressions says regex can be used for the following things that parentheses supports:
* Match patterns that repeat any number of times.
* Capture the parts of the original string that match your pattern.
  1. In episode 2, when searching for the phone number with area code given in parentheses, the solution says "\( escape character with the parenthesis as straightforward character match", but parentheses have not been presented as a special character in the lesson, so the need to escape them has not been pointed out.

If added to the content in episode 1, some options for adding the () into exercises:

  1. Exercise Matching Dates: "How would you match the date format dd-MM-yyyy?" could have a follow up of how to match that same pattern with a regular expression that includes parentheses, with a solution of \b(\d{2}-){2}\d{4}\b
  2. After theMatching Dates exercise, add one that would match both the pattern dd-MM-yyyy and MM-yyyy, with a solution of \b(\d{2}-){1,2}\d{4}\b.
  3. Exercise Matching multiple date formats: How would you match the date format dd-MM-yyyy or dd-MM-yy at the end of a line only? could give a solution in place of the current one that eliminates matching a 3 digit year as is currently given such as \b\d{2}-\d{2}-\d{2}(\d{2})?\b.
  4. After the phone number related challenges in episode 2, add another that asks for a regex that matches both formats of phone numbers (with/without country code and area code given in parentheses or with dash) with a solution somewhere along the lines of (\+\d{1,3} ?|1-)?(\(\d{3}\)\s?|\d{3}-)\d{3}-\d{4}

If adding about the use of parentheses in regex is desired by others, I don't mind contributing this and integrating one (or more) of the exercise options suggested above (or some other exercise you want to suggest).

@ldko
Copy link
Contributor Author

ldko commented Jan 27, 2021

I also just noticed the last quiz question involves parentheses.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant