I was right, it was something really simple and I face-palmed when I figured it out. the [1-16] is not working because it's supposed to be testing for a single character. So you can change it in either of the following ways since your 0-9 are single digit numbers (no preceeding 0)..
Option 1:
"port D1?[0-9]-High collision"
The ? means that the 1 appears 0 or 1 times, so that would give you 0-9 and 1-19. Use this option ONLY if D17 - D19 will not cause you problems.
Option 2:
"port D[0-9]-High collision" "port D1[0-6]-High collision"
This will match the 1st string, 0-9 or the second string 10-16. It's easier to read if you understand that there is an implicit OR happening within Kiwi's filters here.