В
(looking-at ".*\{[ \t]*\\(//.*\\|/\\*.*\\*/[ \t]*\\)*$")
надо добавить учёт: do if() while() for() switch() case with()
каждый из элементов даст примерно такой же длинны регэксп, как приведённый выше. Есть ли какая-нибуде разница в скорости работы и, соответственно, рекомендация как делать, между тем, что засунуть всё в один длинный регэксп или сделать ещё семь (looking-at ...)? Чисто логически один длинный, наверно, лучше?
п.с. ппц регекспы здесь изуродовали слэшами, вообще не читаемые.