$re = '/\d{1,3}\.\s[a-zA-Z\d\?\.\s].+$\n\s(a?\)\s[a-zA-Z].+).+\n\s(b?\)\s[A-Za-z].+).+\n\s(c\).[a-zA-Z].+)/m';
$str = '617. What would you like to eat for lunch? …, I don’t mind.
a) Nothing
b) Anything
c) Something
618. Where do you want to go on holiday? … with a beach.
a) Somewhere
b) Nowhere
613. You look familiar. Haven’t I seen you … before?
a) nowhere
b) anywhere
c) somewhere
614. She left the room without saying … .
a) nothing
b) anything
c) everything
615. I have never been … more beautiful than Thailand.
a) somewhere
b) nowhere
c) anywhere
616. Who was at the party? …, so something very bad must have happened.
a) No one
b) Anyone
c) Everyone
617. What would you like to eat for lunch? …, I don’t mind.
a) Nothing
b) Anything
c) Something
618. Where do you want to go on holiday? … with a beach.
a) Somewhere
b) Nowhere
c) Anywhere
619. I have … to say to you. Goodbye!
a) nothing
b) everything
c) something
620. I felt so good being on stage. I was sure that … was looking at me.
a) someone
b) everyone
c) no one
621. Can you please … some money until next week?
a) lend
b) borrow
c) give
622. I decided to invest in the commodities as the … on offer from bank was extremely low.
a) tax
b) rent
c) interest
623. Many retailers refuse to exchange purchases unless you can show them your … .
a) receipt
b) bill
c) Anywhere
619. I have … to say to you. Goodbye!
a) nothing';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php