Click here to Skip to main content
15,170,331 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I need to get the type and id of videos from a big text, so to do that I used Regex with following expression


now if the text is something like

some text
some text
some text

it works

but if text has single line, like
video('abc,efg');some text video('abc,efg');some text video'abc,efg');some text 

it doesn't work, returns wrong values...
Updated 6-Jan-10 6:29am

.* is "greedy", but .*? is "lazy". The greedy version will find the longest match. The lazy version will find the shortest match. What you want here is the lazy version.

EDIT: Actually, your question marks should be fine. I forget what that construct does, but I've seen it before.

Edit by Asker :
the working one

Replace the .* with a statement that always rejects a '. Your regex will keep going on the line until it finds the last quote, not the next one. I forget what that is, but you can use expresso, which is easy to google, to help build and test regex.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900