Article View: es.comp.os.linux.programacion
Article #1509Re: expresion regular para comprobar Expresion matematicas
From: Han Solo
Date: Sun, 09 Oct 2005 21:01
Date: Sun, 09 Oct 2005 21:01
47 lines
2634 bytes
2634 bytes
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 "Javier M Mora (jamarier)" <javiermm@bigNOfootSPAM.com> writes: > F escribi�: > On Sat, 08 Oct 2005 10:29:28 GMT, F wrote: >> Hola, necesito comprobar que una expresion matematica este bien formada. >> >> por ejemplo 1+2+3 esta bien 1*/3 no >> >> Para ello, cuando no hay parentesis es bastante facil [...] > > Como te han comentado ya, eso m�s que un asunto de expresi�n regular, es > m�s un tema relacionado con Analizadores de sintaxis. Como veo que usas > Perl, Te recomiendo que pases de lex,flex,bison y otros y uses uno de > los modulos disponibles en Perl ;-) > > Concretamente hay un m�dulo llamado Parser:RecDescent que hace lo que > quieres. En el defines una gram�tica (las reglas que quieres que cumpla > tu expresi�n y el m�dulo se encarga de determinar si tu expresi�n cumple > y cuales son los datos que quieres extraer posteriormente. Ese m�dulo no lo conozco, pero para perl yo usaba en tiempos algo llamado perl-byacc, que era una implementaci�n de yacc para perl. La parte del flex me la hac�a a mano, no es tan complicada (al menos para lo que yo hac�a). Un Saludo - -- Han Solo The Rebel Alliance Emacs is not on every system So what? [...] Do you tell your administrative people to stick with notepad.exe? Do you tell your fat kids they can only have the crummy games that come with their video games or plain dress that comes with Barbie? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Processed by Mailcrypt 3.5.8 <http://mailcrypt.sourceforge.net/> iD8DBQFDSYUP4FjpJaPEp20RAmAfAKC5Y24ztl0ea9m+avstc6qfkr6lnQCfZ+DB UlUBEPo7Hm8VQfnrMS5nKIM= =sqYt -----END PGP SIGNATURE-----
Technical Details
Message-ID:
<864q7qflri.fsf@tatooine.ietcc.csic.es>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news3.google.com!news.glorb.com!ilaria.aioe.org!aioe.org!newsReferences:
<ccN1f.4441850$I96.7525036@telenews.teleline.es> <diauvf$gr3$1@appleseed.escomposlinux.org>Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,9615da75e63f6370 X-Google-Attributes: gidf86c8,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news3.google.com!news.glorb.com!ilaria.aioe.org!aioe.org!news From: Han Solo <hsolo@escomposlinux.org> Newsgroups: es.comp.os.linux.programacion Subject: Re: expresion regular para comprobar Expresion matematicas Date: Sun, 09 Oct 2005 23:01:05 +0200 Organization: Aioe.org NNTP Server Lines: 47 Message-ID: <864q7qflri.fsf@tatooine.ietcc.csic.es> References: <ccN1f.4441850$I96.7525036@telenews.teleline.es> <diauvf$gr3$1@appleseed.escomposlinux.org> NNTP-Posting-Host: ugyC4vjKOlzq3r4ar1hlRg.981.domitilla.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Complaints-To: abuse@aioe.org User-Agent: Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux)