I need to analyze a string and get the text between, before, and after the forward slashes..

The string will always look something like this, but will vary:

$str = "I will go to the store with <# one/two/three #> people."

Then I need to create a form with radio buttons for each choice. In this case (one, two, or three).

The text between the <# ... #> could be different every time, and with uknown amount of forward slashes.

Here is what I have so far but it doesn't work.

Code to find if there are slashes:

preg_match_all( '/([/]+)/',$str,$matches);

Code to create html form ..

$i = 0;
$html  = '<form>';

foreach ($matches[0] as $match){

     if ($pos = strpos( $str,$match ) ) === false )

     $html .= '<input type="radio" name="place-' . $i . '" value=". $match . '" />&nbsp;&nbsp;';


$html .= '</form>';

Its not working as needed. I'm not sure how to create radio button choices for the words (one, two, three).


$str = "I will go to the store with <# one/two/three #> people<# four/five/six #>.";
if( preg_match_all( '![<]#([^#]+)#[>]!',$str,$matches) )
	foreach($matches[1] as $group=>$str)
		foreach($parts as $v)
			echo PHP_EOL.'<input type="radio" id="'.$prefix.$id.'" name="'.$prefix.$group.'" value="'.$v.'" /><label for="'.$prefix.$id.'">'.ucfirst($v)."</label>";