In reply to gulshan11:
The difference is when the operator ends and there are more operations in the sequence.
a[->2] ##b //goto - a is true immediately followed by b is true
a[=2] ##1 b // non-consecutive - 'a' could be false any number of clock cycle before b is true
Note that ‘a’ cannot go true again before ‘b’ goes true, otherwise the repetition count would no longer match.