reguláris kifejezés

Kezdőlap Fórumok SOS! Bajban vagyok reguláris kifejezés

5 bejegyzés megtekintése - 1-5 / 5
  • Szerző
    Bejegyzés
  • #1889574
    vuclipracli
    Felhasználó

      Hello!
      A keresőben nem találtam ilyen témát, így most le kell írnom a problémám.
      A sed-del akarom egy szöveg egymás után álló szóközeit egyetlen t-re cserélni. Persze sehogy sem megy. A dokumentációkat elolvastam, de semmit nem segítenek a problémán. A + lenne a megoldás, de semmire (de szó szerint semmire) nem illeszkedik.

      Hogy kicsit bővebben kifejtsem:

      Code:
      echo aaabbb | sed „s/a+/D/g”

      Eredménye:

      Code:
      aaabbb

      (vagyis nem talált egyezést).

      Sok változatban kipróbáltam a +-t, de soha, semmilyen parancsra, semmilyen formában nem működik. Ellenőriztem: a bash fut, vagyis működnie kellene.
      Tudja valaki, hogy hol a hiba?
      A válaszokat előre is köszönöm.

      #2199214
      vuclipracli
      Felhasználó

        Megoldva:
        A + előtt szükség van egy escape karakterre ():

        Code:
        echo aaabbb | sed „s/a+/D/g”
        #2199215
        uzsolt
        Felhasználó

          http://www.linuxvilag.hu/content/files/cikk/37/cikk_37_69_71.pdf
          Ezügyben érdemes a Linuxvilág újság archívumában keresgélni, sok hasznos dolgot leírtak ott, tömérdek példával, részletes magyarázattal (google -> „sed site:www.linuxvilag.hu”).

          #2199216
          vuclipracli
          Felhasználó

            A kérdést azért tettem fel, mert néhány órán át hiába püföltem a billentyűzetet a megoldásért, aztán beugrott (néhány perccel a téma indítása után), hogy mi van, ha escape karakter kell a módosító elé. Megjegyzem, hogy a * elé nem kell, ami egy kissé megzavart.
            A linket követtem és valóban hasznos lehet még akkor is, ha már nem újdonság a tartalma.
            Mindent egybevetve: köszönöm a választ és a program, amihez használtam már üzemel.

            #2199217
            gendelider
            Felhasználó

              Amire figyelj reguláris kifejezéseknél: nem egyformák sed, perl, awk, bash, … alatt, mindenhol vannak legalább apró különbségek, amik megkeserítik az ember életét. Egyszer volt egy összehasonlító táblázatom, de sajnos nem találom már évek óta.

            5 bejegyzés megtekintése - 1-5 / 5
            • Be kell jelentkezni a hozzászóláshoz.