![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| tusenskilletegn | ynixon | Shell programmering og Skripting | 11 | 04-13-2008 11:43 |
| regexp å skrive ut etter at et felt SEPERATOR | ramky79 | Shell programmering og Skripting | 7 | 05-09-2007 07:31 |
| hvordan du kan inkludere feltet separator hvis det er tomt felt? | Rev | Shell programmering og Skripting | 19 | 07-13-2005 05:50 |
| Hvordan angir jeg fanen som feltet separator for slag? | SSteve | UNIX for Dummies Spørsmål og svar | 8 | 04-26-2005 05:39 |
| Skilletegn i Makefile? | laila63 | Shell programmering og Skripting | 2 | 07-01-2004 11:11 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
Feltet skilletegnet som regexp
Jeg har en versjon av awk som ikke støtter regeluttrykket feltet skilletegnene (verken har jeg nawk eller gawk). Hvordan går jeg om å lese en linje med feltet skilletegnet som enten strengen "\u003d #" eller "+\u003d".
Dataene mine ser slik ut: abhishek \u003d # nnnnn + # 1234 + # 87 Ett alternativ er å bruke tr og endre "\u003d" til "+" (Jeg er sikker "\u003d" ikke vises noe annet sted), men filen er ganske stor, og det er mange operasjoner jeg planlegger å gjøre på felt, mens jeg var lese filen linje for linje, ville jeg unngå å bruke det. Noen forslag kan du? |
|
||||
|
bruke perl. ingen problemer med å splitte det. for eksempel: Code:
$ cat 1 abhishek=#nnnnn+#1234+#87 $ cat 1| perl -naF'/(\=#|\+#)/' -e '$"=" "; print "@F"' abhishek =# nnnnn +# 1234 +# 87 eller Code:
$ cat 1| perl -naF'/\=#|\+#/' -e '$"=" "; print "@F"' abhishek nnnnn 1234 87 |
|
||||
|
Thanks a lot! Men kan du forklare syntaksen? Jeg er klar over noen grunnleggende PERL (men neppe oneliners!), og kan ta ut som du splitte $ _ på mønstre "+ #" eller "\u003d #" og gir den til array F. Men jeg dont forstår mye av noe annet i setningen . Kan du fortelle meg hvor kan jeg angi ytterligere uttalelser behandle felt i loop kroppen (for eksempel en om uttalelse til å teste noe på den andre array parameter)?
Også, hvis mulig, kan du foreslå noen på nettet PERL en rutebåt referanser? |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|