andi123: grep - Syntax

Wie ist die korrekte Syntax, wenn ich mit grep pruefen will ob folgender String in einder Datei enthalten ist?

news/artikel.asp?id=XXXXXXXX&rubrik=YYYYYYY&etag=ZZZZZZZZZ

XXXXXXXXX steht fuer eine Zahl
YYYYYYYYY steht fuer eine Zeichenkette
ZZZZZZZZZ ist ein Datum im Format 'tt.mm.jj'

Wie sind in diesem Fall die Platzhalter zu machen.
Die Laenge der Platzhalter sind unbestimmt.

Danke Andi

  1. Hallo,  (= Begrüßung)

    Wie ist die korrekte Syntax, wenn ich mit grep pruefen will ob folgender String in einder Datei enthalten ist?

    news/artikel.asp?id=XXXXXXXX&rubrik=YYYYYYY&etag=ZZZZZZZZZ

    XXXXXXXXX steht fuer eine Zahl
    YYYYYYYYY steht fuer eine Zeichenkette
    ZZZZZZZZZ ist ein Datum im Format 'tt.mm.jj'

    Wie sind in diesem Fall die Platzhalter zu machen.
    Die Laenge der Platzhalter sind unbestimmt.

    In welcher Sprache hättest du es denn gern ? Perl, PHP, ASP, Python ..? Vielleicht solltest du dir mal die </faq/> durchlesen, besonders </faq/#Q-05/> und </faq/#Q-06/>.

    1. Hallo,

      Hallo,  (= Begrüßung)

      Ach, ich bin einfach zu weich ;-)))

      Wie ist die korrekte Syntax, wenn ich mit grep pruefen will ob folgender String in einder Datei enthalten ist?

      news/artikel.asp?id=XXXXXXXX&rubrik=YYYYYYY&etag=ZZZZZZZZZ

      XXXXXXXXX steht fuer eine Zahl
      YYYYYYYYY steht fuer eine Zeichenkette
      ZZZZZZZZZ ist ein Datum im Format 'tt.mm.jj'

      Wie sind in diesem Fall die Platzhalter zu machen.
      Die Laenge der Platzhalter sind unbestimmt.

      In welcher Sprache hättest du es denn gern ? Perl, PHP, ASP, Python ..? Vielleicht solltest du dir mal die </faq/> durchlesen, besonders </faq/#Q-05/> und </faq/#Q-06/>.

      Nein, da muß ich ihn in Schutz nehmen. Es gibt ein Programm namens 'grep', das uralt und allgemein bekannt ist. Ohne weitere Angaben ist davon auszugehen, das es sich darum handelt.
      (Wird es wahrscheinlich nicht, aber egal ;-)

      so short

      Christoph Zurnieden

      1. Hallo,

        Nein, da muß ich ihn in Schutz nehmen. Es gibt ein Programm namens 'grep', das uralt und allgemein bekannt ist. Ohne weitere Angaben ist davon auszugehen, das es sich darum handelt.
        (Wird es wahrscheinlich nicht, aber egal ;-)

        Also nach seiner Erklärung hört sich das genauso an, wie die Funktion grep in Perl, weil die ja genau das macht :-)

        1. Hallo,

          Nein, da muß ich ihn in Schutz nehmen. Es gibt ein Programm namens 'grep', das uralt und allgemein bekannt ist. Ohne weitere Angaben ist davon auszugehen, das es sich darum handelt.
          (Wird es wahrscheinlich nicht, aber egal ;-)

          Also nach seiner Erklärung hört sich das genauso an, wie die Funktion grep in Perl, weil die ja genau das macht :-)

          Wenn ich mich richtig entsinne, bist Du einer der jüngeren Poster hier, Du hast wahrscheinlich noch nicht die Mühen, aber auch die innere Schönheit einer Datenfindung unter Unix kennengelernt, oder?

          $ find ~ -perm -111 -name '[0-9]*.c' -exec grep foo[ ]?=[ ]?[0-9A-Fa-f]{,3} {} ; -print

          Und wenn Du jetzt rausfindest, was das Dingen sucht und worin, gibt es 999 Gummipunkte ;-)

          so short

          Christoph Zurnieden

  2. Hallo,

    Wie ist die korrekte Syntax, wenn ich mit grep pruefen will ob folgender String in einder Datei enthalten ist?

    news/artikel.asp?id=XXXXXXXX&rubrik=YYYYYYY&etag=ZZZZZZZZZ

    XXXXXXXXX steht fuer eine Zahl
    YYYYYYYYY steht fuer eine Zeichenkette
    ZZZZZZZZZ ist ein Datum im Format 'tt.mm.jj'

    Wie sind in diesem Fall die Platzhalter zu machen.
    Die Laenge der Platzhalter sind unbestimmt.

    bash-2.02$ cat testdoc
    biscken blabla biscken blabla biscken blabla biscken blabla
    biscken blabla biscken blabla biscken blabla biscken blabla
    blablanews/artikel.asp?id=123456789&rubrik=bar-rubrik&etag=12.34.56blabla
    news/artikel.asp?id=123456789&rubrik=bar-rubrik&etag=12.34.56
    news/artikel.asp?id=123456789&rubrik=bar-rubrik&etag=12.4.56
    news/artikel.asp?id=123456789&rubrik=bar-rubrik&etag=12/34/56
    news/artikel.asp?id=A23456789&rubrik=bar-rubrik&etag=12.34.56
    news/artikel.asp?id=123456789&rubrik=bar-rubrik-blabla&etag=12.34.56
    news/artikelasp?id=123456789&rubrik=bar-rubrik-blabla&etag=12.34.56
    biscken blabla biscken blabla biscken blabla biscken blabla
    biscken blabla biscken blabla biscken blabla biscken blabla
    bash-2.02$ cat testdoc | grep  '^news/artikel.asp?id=[0-9]*&rubrik=[0-9a-zA-Z-]*&etag=[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}$'
    news/artikel.asp?id=123456789&rubrik=bar-rubrik&etag=12.34.56
    news/artikel.asp?id=123456789&rubrik=bar-rubrik&etag=12.4.56
    news/artikel.asp?id=123456789&rubrik=bar-rubrik-blabla&etag=12.34.56
    bash-2.02# grep --version
    grep (GNU grep) 2.2

    Copyright (C) 1988, 92, 93, 94, 95, 96, 97 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

    Ist ein wahrscheinlich eetwas komplizierter als nötig und nicht ganz so flexibel, wie vielleicht gewünscht. Rest ist für Dich, siehe auch
    'man grep'
    und
    'man 7 regex'

    so short

    Christoph Zurnieden

    1. Hoi Christoph,

      bash-2.02$ cat testdoc | grep  '^news/artikel.asp?id=[0-9]*&rubrik=[0-9a-zA-Z-]*&etag=[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}$'

      Also, dafuer sollte man dich eigentlich pruegeln ;-) Das ist nun wirklich useless
      use of a pipe ;-)

      Gruesse,
       CK

      1. Hallo,

        bash-2.02$ cat testdoc | grep  '^news/artikel.asp?id=[0-9]*&rubrik=[0-9a-zA-Z-]*&etag=[0-9]{1,2}.[0-9]{1,2}.[0-9]{1,2}$'

        Also, dafuer sollte man dich eigentlich pruegeln ;-) Das ist nun wirklich useless
        use of a pipe ;-)

        SCNR ;-)

        Und warum merkt das sonst keiner?

        so short

        Christoph Zurnieden