Ahh, okay I thought you were going for the overkill in being both non-greedy and excluding the closing `>`, but that kind of makes sense, since it's slightly stricter if the markup is really terribly broken. The multiline qualifier is not needed here since it only affects the wildcard character `.`. A negative character class will match the newline character:

```
[2] pry(main)> "\n".match(/./)
=> nil
[3] pry(main)> "\n".match(/[^>]/)
=> #<MatchData "\n">
```