Ah ha! I see why your test wasn't testing for a boolean! This will work better if you add some bang bang:

```ruby
!!(tag =~ /^[a-zA-Z]\w*:[a-zA-Z]\w*(=(\*|[^*]+))?$/)
```