Aqui te pongo como funcionaria con espacio antes del DEDI
Código PHP:
Ver originalinclude('includes/mysql.php');
$cadena = "
ET DEDI #1 1 500
ET DEDI #2 1 700
ET DEDI #3 1 900
";
$patron = '/([A-Z]+\s)([A-Z]+\s)(\#[0-9]{1,4}+\s)([0-9]{1,4}+\s)([0-9]{1,6})/';
{
$prefixProducto = $resultado[1];
$producto = $resultado[2];
$codProducto = $resultado[3];
$cantidad = $resultado[4];
$precio = $resultado[5];
$sqlString = "INSERT INTO test(`producto`,`cantidad`,`precio`)VALUE";
for ($i = 0;$i < count($producto); $i++) {
$sqlString .= "('".$prefixProducto[$i].$producto[$i].$codProducto[$i]."',".$cantidad[$i].",".$precio[$i]."),";
}
echo trim($sqlString, ','); }
Pero pensando bien , no creo que el codigo se adapte a posibilidades, si es posible pon por lo menos 3 ejemplos distintos para tener una idea y hacer un patron o utilizar otros metodos.