There are three types of patterns
(1) word
(2) fnmatch() style
(3) regex
They're all intermangled together, so: A bare word only matches a direct match. If it includes a special character like * then it tries matching a fnmatch pattern first, and if that fails, tries to match a regex. And these expressions are not anchored as you have noticed.
What you want to search for is probably vcard$ or ^vcard. In fact, always include a ^ or a $ when specifying expression, as that forces apt to do regex matching.
Now, it's of course annoying that it is this way, but it's not a bug. I hope we get patterns at some point, so you can search name(regex) without having to worry about this shit. But that's going to take a while.
I guess we can keep this bug open as the pattern tracking bug, unless we already have another one for that, so I'm marking that as triaged for now.
There are three types of patterns
(1) word
(2) fnmatch() style
(3) regex
They're all intermangled together, so: A bare word only matches a direct match. If it includes a special character like * then it tries matching a fnmatch pattern first, and if that fails, tries to match a regex. And these expressions are not anchored as you have noticed.
What you want to search for is probably vcard$ or ^vcard. In fact, always include a ^ or a $ when specifying expression, as that forces apt to do regex matching.
Now, it's of course annoying that it is this way, but it's not a bug. I hope we get patterns at some point, so you can search name(regex) without having to worry about this shit. But that's going to take a while.
I guess we can keep this bug open as the pattern tracking bug, unless we already have another one for that, so I'm marking that as triaged for now.