- preg_match: documentation ( source)
<?php
$x = "50+60";
$regex = '#(?<val1>.*)(?<operator>[\+\-\/\*])(?<val2>.*)#';
preg_match( $regex, $x, $match);
if (count($match)) {
echo $match['val1'] . $match['operator'] . $match['val2'] .' = ';
switch ($match['operator']) {
case '+':
$result = $match['val1'] + $match['val2'];
break;
case '-':
$result = $match['val1'] - $match['val2'];
break;
case '/':
$result = $match['val1'] / $match['val2'];
break;
case '*':
$result = $match['val1'] * $match['val2'];
break;
}
echo $result;
}