Matches (as I understand it) are by default greed, that is they will match as much as they can of the string. Sometimes you want the smallest match.
(PowerShell Example)
PS> $line = "one apple, two oranges, three pears, four pineapples"
PS>#Example of a greedy regular expression (largest possible match)
PS> $line -replace "\s.+,\s", "REPLACED"
oneREPLACED four pineapples
PS>#Example of lazy match (by using ? to force lazy match)
PS> $line -replace "\s.+?,\s", "REPLACED"
oneREPLACEDtwoREPLACEDthreeREPLACEDfour pineapples
More examples at:
http://en.wikipedia.org/wiki/Regular_expressions#Lazy_quantification