you are wrong, however, not to mention this alongside examples that specifically display this in an unrelated context, as this is something that is far from obvious. you can
1. easily use different examples or
2. add one line of text that clears this up
on the other hand, the title of the book is to learn regex the hard way, so i'm quite possibly the one who is wrong here. i am not trying to troll, trust me, i respect the work and knowledge you have put into this. but as someone who has been confused by this in the past during my own learning, i see no reason why you think i'm an exception and continue to argue against any clarification or change.
1. "I have been bit in the past by not knowing an obscure fact." 2. "To protect myself, I must learn every obscure fact to prevent this from happening again." 3. "This here has a missing obscure fact and is therefore going to hurt me and everyone around me."
This attitude that you have to teach someone everything about something right away is the reason most educational tech books suck. You do not need to teach someone everything right away. You don't even need to teach them everything as long as what you've taught is the foundational elements and those are correct.
This attitude is also hyperbolic. The book is not going to destroy the world because you have a problem with one small portion of one exercise that you can't even fix yourself.
Finally, you keep saying these things, and you keep asserting you're correct, but I don't see a solution from you. It's in a git repository:
http://gitorious.org/learn-regex-the-hard-way/
So put your money where your mouth is and send me a patch. If it's soooooo easy to fix and explain then prove me wrong.
Until you offer up your supposedly superior world saving solution I have to assume you're just wrong but can't admit it.
i would be more than happy to send a patch if i wasn't 100% sure that it would be rejected or ignored on the stated grounds. these convos along with the only 2 outstanding, uncommented, unmerged, 3.5-month-old merge requests have not exactly instilled a great vote of confidence that you are open to taking people's code or advice.
i will leave you with this - after reading through your alteration section (and perhaps the whole book), beginning regex students will be unable to correctly answer the following question (using your own example) which appears not to use any concepts not previously discussed:
Circle all strings below which will be matched by ^[0-9]+|[a-z]+$
a. abc
b. 123
c. abc123
d. 123abc
e. abc_45&{`!123
f. 123_xk&{`!abc
g. _xk&{`!abc
h. 123_xk&{`!
if you believe this is some edge-case gotcha and as a teacher, you're okay with this, that's fine with me, i've spent an order of magnitude more energy than i should have trying to help.