使用正则表达式从引号之间提取值

I have the following string:

feature name="osp"

I need to extract part of the strings out and put them into a new string. The word feature can change and the word inside quotes can change so I need to be able to capture any instance possible. The name=" " part is always the same. The result I need is:

feature osp

I need to filter out the name= and quotes from the string.

I've used this ^\w*\s to get the first feature part but can't figure out how to extract osp from the string using a regex. I've been looking here RegEx: Grabbing values between quotation marks but can't get a regex that combines both to get the result I need. I'm working in PHP so using preg-match at the moment. Can anyone help with this?

I'd go with

(\w+)\s+name\s*=\s*"([^"]*)

It's a little bit slower, but it allows for arbitrary number of spaces and it captures the first word correctly, even with Alexandru's test.

See it work here at regex101.

Regards

Try something like that:

preg_match('/(.+)name="(.+?)"/', $string, $matches);

echo $matches[1] . $matches[2];

An improved version of @vuryss

preg_match('/(.*?)name="(.*?)"/ims', $string, $matches);    
echo $matches[1] . $matches[2];