1. И не будет работать. Там несколько ошибок.
а) в квадратных скобках указывают символьный класс. Выражение [0-12]{1} означает "0", "1" или "2".
б) "0-5{1}0-9{1}" эквивалентно простому "0-50-9"
в) вертикальная черта действует на весь теущий блок (то что находится внутри круглых скобок). Здесь круглых скобок нет, значит на все регулярное выражение. То есть ищется либо вся левая часть ("[0-12]{1}:0-5{1}0-9{1}am"), либо вся правая ("pm").
Данное выражение может выглядеть примерно так:
/XXXXX:[0-5][0-9] ?(am|pm)/i
где самое интересное, это правильно записать часы, что оставляется для дальнейшего обдумывания.
2. /\\b(\\w*[bcdfg......]{4}\\w*)\\b/i