Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Expresion regular (https://www.clubdelphi.com/foros/showthread.php?t=81401)

JuanOrtega 11-11-2012 00:17:53

Expresion regular
 
Hola queria preguntar si alguien me podria dar un ejemplo de como hacer una expresion regular con split para el siguiente caso , en la cual tengo una variable que dice "hola test mundo" y mi idea seria sacar la parte test de la variable y mostrarla por pantalla.

¿Alguien me podria ayudar ?

Casimiro Notevi 11-11-2012 00:39:57

¿Y qué tienes hecho?

JuanOrtega 11-11-2012 00:41:40

nada porque no entiendo como se hace ,por eso pregunto si alguien me podria dar un ejemplo.

Casimiro Notevi 11-11-2012 01:34:50

¿Ni siquiera lo intentas?

mamcx 11-11-2012 01:58:28

Entonces empieza por buscar un tutorial de expresiones regulares, y luego busca "expresiones regulares " + el lenguaje que usas.

En ingles, "regular expression" o regex

Es buena idea ademas que tengas un programa para probar las expresiones regulares. Busca "regex tester".

JuanOrtega 11-11-2012 04:36:22

claro que lo eh intentado , haganme un favor y borren el post.

Casimiro Notevi 11-11-2012 12:27:50

No, amigo, mejor lo dejamos para que los demás vean la actitud que no hay que tener si quieres dedicarte a vivir de esto :confused::confused::confused:

nlsgarcia 11-11-2012 18:17:23

Lepuke,

Revisa estos links:
Cita:

Regular Expressions - User Guide
http://www.zytrax.com/tech/web/regex.htm

RegEx / Regular Expression Components for Delphi
http://delphi.about.com/od/toppicks/...xpressions.htm

How to split a string into an array
http://delphi.about.com/cs/adptips20...ltip1102_5.htm

Strings
http://www.delphibasics.co.uk/ByFunc...p?Main=Strings
Cita:

Empezado por Isaac Newton:
"Si he hecho descubrimientos invaluables ha sido más por tener paciencia que cualquier otro talento."

Espero sea útil :)

Nelson.

Al González 12-11-2012 16:06:38

Cita:

Empezado por Casimiro Notevi (Mensaje 449183)
...actitud que no hay que tener si quieres dedicarte a vivir de esto :confused::confused::confused:

Yo no conozco al compañero Lepuke, pero en tu caso, ¿cómo sabes que desea vivir de la programación? :confused:

Lepuke: Para extraer una palabra que se encuentra entre dos espacios, no necesitas usar expresiones regulares.

¿Podrías detallar qué es exactamente lo que necesitas? Anímate a escribir más de 140 caracteres por mensaje, sí caben más (Club Delphi utiliza una tecnología diferente de los celulares). ;)

Saludos cordiales.

roman 12-11-2012 16:52:49

Cita:

Empezado por Al González (Mensaje 449229)
Yo no conozco al compañero Lepuke, pero en tu caso, ¿cómo sabes que desea vivir de la programación? :confused:

Si se quiere o no dedicar a la programación es irrelevante Al. Se entiende que quien participa en unos foros de programación lo hace por tener un interés en ello (*), se dedique o no a eso. Lo que destaca Casimiro en su intervención -y con lo que concuerdo- es que si quieres aprender una disciplina (te dediques o no a ella) debes mostrar un mínimo interés en aprender e investigar.

-----------

(*) Desde luego hay casos, los ha habido en el Club, en que a alguien se le presenta la necesidad de hincarle el diente a un código sin tener la más mínima idea ni interés en la programación. Algo tangencial a su actividad. Pero en esos casos se dice abiertamente cuál es l situación.

// Saludos

JuanOrtega 13-11-2012 17:54:25

aclaro , yo no vivo de la programacion tengo otro trabajo y otra carrera , esto solo lo hago como pasatiempo , asi que no digan cosas que no son.

y sobre el tema ya no me interesa la pregunta asi que hagan lo que quieran con el post.

Casimiro Notevi 13-11-2012 18:05:57

Vaya, finalmente vas a resultar un desagradecido :confused:

JuanOrtega 13-11-2012 18:15:09

¿ desagradecido ? , si no he hecho nada :confused:

Casimiro Notevi 13-11-2012 18:25:42

Tu actitud y comentarios no son nada "acertados" ni "lógicos", y no digamos nada entonces sobre el mensaje privado.

JuanOrtega 13-11-2012 18:44:25

pero solo estoy aclarando que me gusta la programacion como hobby , porque mis matematicas son malisimas y no pude entrar a la facultad , por eso tuve que elegir otra profesion , no estoy diciendo nada fuera de contexto ,y sobre el mensaje privado te pedi por favor que borraras este post porque tenia muchos problemas y este post me hacia sentir mal en la forma en la que quede.

Casimiro Notevi 13-11-2012 18:48:44

Venga, vale, no insistiré en el tema.

ecfisa 13-11-2012 18:55:45

Hola.

Para que el hilo no le resulte estéril a los posibles usuarios interesados, una forma puede ser:

Código Delphi [-]
function ExtraerPalabra(Frase, Palabra: string): string;
begin
  Delete(Frase,Pos(Palabra,Frase),Length(Palabra));
  Result:= Frase;
end;

Llamada:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  Caption:= ExtraerPalabra('hola test mundo', 'test');
end;

Saludos. :)

nlsgarcia 13-11-2012 20:02:19

Club Delphi,

Para contribuir a la idea de ecfisa:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure Split(const Delimiter: Char; Input: string; const Strings: TStrings);
begin
   Strings.Clear;
   Strings.Delimiter := Delimiter;
   Strings.DelimitedText := Input;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
   StrList: TStringList;
   i : Integer;
   s : String;
begin
   StrList := TStringList.Create;
   try
      Split(' ', 'Hola Test Mundo', StrList) ;
      for i := 0 to StrList.Count - 1 do
         ShowMessage(StrList[i]);
      for i:= 0 to StrList.Count - 1 do
         if StrList[i] <> 'Test' then
           s := s + ' ' + StrList[i];
      ShowMessage(s);
   finally
      StrList.Free;
   end;
end;

end.
Espero sea útil :)

Nelson.

mamcx 13-11-2012 22:50:10

Cita:

Empezado por Lepuke (Mensaje 449358)
pero solo estoy aclarando que me gusta la programacion como hobby , porque mis matematicas son malisimas y no pude entrar a la facultad , por eso tuve que elegir otra profesion , no estoy diciendo nada fuera de contexto ,y sobre el mensaje privado te pedi por favor que borraras este post porque tenia muchos problemas y este post me hacia sentir mal en la forma en la que quede.

Ok lepuke. Es bueno que entiendas que no es nuestra intención hacerte sentir mal. Por otro lado, los medios informáticos de comunicacion son impersonales -y por lo tanto, se perciben como MUY RUDOS en general-, así que no se puede saber ni interpretar tonos de voz, inflexiones, expresiones de rostro, etc, que constituyen un 80% de la información que los humanos usamos para entendernos (masomenos).

Es por eso, que al usar un medio como este hay que saber como hacerlo. En ausencia de esos medios, existe un protocolo o "buenas maneras".

El primer punto es leer la guia de estilo, que esta arriba de este foro.

Te recomiendo que leas:

Cita:

En el mundo de los hackers|programadores, el tipo de respuestas que obtengas a tus preguntas técnicas depende tanto de la manera en que formules tus preguntas como de la dificultad de desarrollar la respuesta. En esta guía se enseñará cómo preguntar de manera que puedas obtener una respuesta satisfactoria.

Cómo hacer preguntas de manera inteligente, de Eric S. Raymond
http://www.sindominio.net/ayuda/preg...eligentes.html

Y por ultimo, ten paciencia. Si quieres algo YA y RAPIDO y sin tener que esforzarte, entonces debes contratar el trabajo. De lo contrario, haz preguntas inteligentes (no es que dude de tu inteligencia, es que no te veo la cara, no te conozco, no se tu historia, ni nada de nada. Solo tenemos unas frases escritas y COMO esten escritas es la unica manera de interactuar!)

movorack 14-11-2012 03:11:15

Me quede leyendo el tema del link. STFW RTFM... :-)


La franja horaria es GMT +2. Ahora son las 10:50:13.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi