1) String match should be faster than a regexp for that (on Tcl 8.4 anyway.)
2) OpenACS is not the first or only platform to break that rule. I believe we discussed changing the most serious actions to forms when someone had time to work on it.