I would like to know what is the difference between (.+?) And (.*?)
(.+?)
(.*?)
Form .+? requires matching at least one character, whereas .*? may not match at all. Both operations are not greedy, so they will try to find the shortest matching string.
.+?
.*?