<html><body bgcolor="#FFFFFF"><blockquote type="cite"><div><br><font class="Apple-style-span" color="#000000"><br></font><span></span><br><span>asumí que si que podías controlar la creación de la cadena original y</span><br><span>por lo tanto usar un mecanismo de serialización robusto, probado y</span><br><span>fácil de usar. Pero si ese no es el caso yo me lo plantearía de forma</span><br><span>diferente según dos supuestos:</span><br><span></span><br><span>Supuesto 1: Estas intercambiando datos con un proveedor bastante</span><br><span>cutre. Cambia de trabajo&nbsp;</span><br></div></blockquote><div><br></div><div>Vale. Pero solo si luego me contratas tu.</div><div>;)</div><div><br></div><br><blockquote type="cite"><div><span></span><br><span>Supuesto 2: Estas haciendo un scraper y el proveedor de datos ni</span><br><span>siquiera sabe que lo es. Posiblemente las regex (modulo re) sean la</span><br><span>mejor opción para casi todos tus problemas. De fallarte eso puedes</span><br><span>mirar alguna herramienta para hacer parsers, pero eso ya sería para</span><br><span>gramáticas complejas y recursivas.</span><br><span></span><br><span>re.match("(\w+,\w+),(\w+)", cadena).groups()</span><br><span></span><br><span>Posiblemente con el ejemplo anterior tengas solucionado tu problema.</span><br><br></div></blockquote><br><div>Gracias a todos por vuestro tiempo e ideas.</div><div>El problema no es facil, la verdad.</div><div>Yo no controlo la creacion de la cadena original. Viene de un fichero de configuracion que yo analizo con ConfigParser. Soluciones tipo usar listas [], serializar, split() con indice,... no valen. Yo no puedo saber a priori lo que los usuarios van a poner en los ficheros de conf.</div><div><br></div><div>Cambiar de separador es una posibilidad, pero tiene el inconveniente de que entonces tengo que pedirle a todos los usuarios que cambien sus config files. Ya pase por esa experiencia y no fue agradable. Aprendi a molestar a los usuarios lo menos posible.</div><div><br></div><div>La solucion menos intrusiva era que cuando un usuario necesite que la coma sea literal la marcase de alguna forma. Pero entonces me vi atrapado en un problema recursivo.</div><div><br></div><div>En fin, lo dicho. Muchas gracias a todos por vuestras sugerencias.</div><div><br></div><div>Saludos,</div><div>Jose</div></body></html>