Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Forum italiano (Italian) Forum di discussione italiano
  • Search

Ancora su SED e espressioni regolari

Tutte le discussioni direttamente correlabili all'informatica e/o a GNU/*nix.

Moderator: ago

Post Reply
  • Print view
Advanced search
6 posts • Page 1 of 1
Author
Message
Deus Ex
Guru
Guru
User avatar
Posts: 489
Joined: Wed Nov 16, 2005 8:32 am
Location: Patavium

Ancora su SED e espressioni regolari

  • Quote

Post by Deus Ex » Tue Mar 31, 2009 11:38 am

Ciao,
scusate la mia ignoranza abissale, ma non ne vengo fuori, nonostante sia quasi una mattinata che cerco di capire perchè.
Probabilmente la mia domanda sarà banale, ma non capisco perchè, se ho un file di N righe di cui ogni riga ha il formato di queste tre:

Code: Select all

17594;'pippo@tiscali.it';'Fabio';'Pippo';'Roma';'full';1;1;
17595;'pluto@libero.it';'Rolando';'Pluto';'Ancona';'classic';1;1;
17596;'paperino@fastwebnet.it';'Carmen';'Paperino';'Torino';'classic';1;1;
e applico questa riga di sed al file suddetto:

Code: Select all

sed 's/[0-9]/\"&\"/g' miofile.csv
invece di mettermi le virgolette in questo modo (ovvero intorno al primo gruppo di numeri iniziale e agli ultimi due "1"):

Code: Select all

"17594";'pippo@tiscali.it';'Fabio';'Pippo';'Roma';'full';"1";"1";
"17595";'pluto@libero.it';'Rolando';'Pluto';'Ancona';'classic';"1";"1";
"17596";'paperino@fastwebnet.it';'Carmen';'Paperino';'Torino';'classic';"1";"1";
mi dà questo output:

Code: Select all

"1""7""5""9""4";'pippo@tiscali.it';'Fabio';'Pippo';'Roma';'full';"1";"1";
"1""7""5""9""5";'pluto@libero.it';'Rolando';'Pluto';'Ancona';'classic';"1";"1";
"1""7""5""9""6";'paperino@fastwebnet.it';'Carmen';'Paperino';'Torino';'classic';"1";"1";
In sostanza, la domanda è: come faccio a fare in modo che sed capisca che il primo campo è costituito da più cifre e che compone un unico numero? Scusate ancora la banalità della domanda e un grazie sentito a chi vorrà rispondermi :)
Deus Ex
--
L’inflazione che caccia nelle mani dell’individuo, in un gesto solo, miliardi di marchi, lasciandolo più miserabile di prima, dimostra punto per punto che il denaro è un’allucinazione collettiva.
Top
codadilupo
Advocate
Advocate
Posts: 3135
Joined: Tue Aug 05, 2003 8:48 am

  • Quote

Post by codadilupo » Tue Mar 31, 2009 1:58 pm

a parte fare due passaggi, di cui uno:

Code: Select all

sed 's/[0-9][0-9][0-9][0-9][0-9]/\"&\"/' miofile.csv
non saprei proprio

P.S.: se vuoi approfondire http://gnosis.cx/publish/programming/re ... sions.html

Coda
Top
Deus Ex
Guru
Guru
User avatar
Posts: 489
Joined: Wed Nov 16, 2005 8:32 am
Location: Patavium

  • Quote

Post by Deus Ex » Tue Mar 31, 2009 10:05 pm

codadilupo wrote: P.S.: se vuoi approfondire http://gnosis.cx/publish/programming/re ... sions.html
Gentilissimo, grazie! :)
Deus Ex
--
L’inflazione che caccia nelle mani dell’individuo, in un gesto solo, miliardi di marchi, lasciandolo più miserabile di prima, dimostra punto per punto che il denaro è un’allucinazione collettiva.
Top
table
Apprentice
Apprentice
User avatar
Posts: 279
Joined: Sat Feb 17, 2007 1:01 am
Location: Gazzaniga (BG) Italy

  • Quote

Post by table » Thu Apr 09, 2009 10:25 am

Deus Ex wrote:
codadilupo wrote: P.S.: se vuoi approfondire http://gnosis.cx/publish/programming/re ... sions.html
Gentilissimo, grazie! :)
potresti usare anche questa, che è più robusta

Code: Select all

sed 's/[0-9]\{1,\}/"&"/g'
indica che la cifra può essere ripetuta da 1 a n volte -> senza considerare gli escape -> [0-9]{1,}


oppure:

Code: Select all

sed 's/[0-9]\+/"&"/g'
Pulisci l'html con:

Code: Select all

sed 's/<[Bb][Rr][ \t]*\/*>/\n/g;s/<\/*[^>]\+\/*>//g'
skype: matteopinguino
Top
Kernel78
Moderator
Moderator
Posts: 3654
Joined: Fri Jun 24, 2005 6:14 am
Contact:
Contact Kernel78
Website

  • Quote

Post by Kernel78 » Tue Apr 14, 2009 10:39 am

Il secondo esempio fornito da table secondo me è il più indicato

In ogni caso se ritieni soddisfatta la tua richiesta metti [RISOLTO] nel titolo del thread :wink:
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con

Code: Select all

grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Top
randomaze
Bodhisattva
Bodhisattva
User avatar
Posts: 9985
Joined: Tue Oct 21, 2003 7:55 am
Contact:
Contact randomaze
Website

  • Quote

Post by randomaze » Tue May 12, 2009 1:01 pm

Mi sembra che il topic non sia un tipo e/o howto quindi é più corretto in questa sezione


Moved from Risorse italiane (documentazione e tools) to Forum di discussione italiano.
Ciao da me!
Top
Post Reply
  • Print view

6 posts • Page 1 of 1

Return to “Forum di discussione italiano”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic