Regexps come up pretty often in text processing, like reading DF RAWs or something to do with the web or what have you. Another common application is searching text files for expressions. Plus you can do things like re-format phone numbers, hacky xml processing and so on.
Regexes are one of great strengths of scripting languages, like Perl, Python, Ruby, Lua, etc.
They can get quite arcane and messy pretty quick and a good syntax-highlighting and brace-matching text editor can only help so far, so they can get unpleasant.
There is a book called "Mastering Regular Expressions" and I've heard it's good, but haven't read it yet.
Anyway, I think it is OK to feel good because you know regexps
Now my question is about users more than programming. I wrote some scripts to make a subset of RAWs into tables and wrote manuals for that. The surprisingly problematic parts come down to things like:
To do this, execute it with these parameters:
$ perl -w ../armour.pl --bbcode --sort=LAYER *.txt > ../armour_bb.txt
To which the users respond with:
1) I'm afraid to use the console.
2) I don't have perl.
3)
When I write "$ ..." the console says it's an error, but it works without it.
4)
My console doesn't understand the *, but it works after I fed it a list of files manually. These things keep coming up, despite me writing that:
1) Like any power tool, it is only dangerous when misused. Watch where you're re-directing that standard output and you'll be OK.
2) A bunch of install links.
3) What? The "$" is just the prompt sign, that means more or less "write the things after this in the console". This convention is used by so many tutorials and howtos that I'm surprised you know how to use a console, but not to omit the dollar.
4) Usually a case of putting the whole command in quotes or pointing to the wrong directory.
Number 3 is especially weird. Is there some other convention for this that I'm not aware of? Or maybe something to put in the manual to make users less frustrated and me less confused about it?