> Din cite imi aduc aminte, la regexp, \s marcheaza un spatiu, iar \s+ > marcheaza > mai multe spatii. eu vreau sa scot dintr-un fisier toate liniile care > incep > cu unul sau mai multe spatii urmate de litera P > > Cum e corect: cu \s sau cu \s+, ca vad ca la mine ambele expresii > produc > acelasi rezultat :-( > > $ grep -E '^[ \s]+[P]' test.txt > Prune > Pere > Pomi > $ > $ grep -E '^[ \s+]+[P]' test.txt > Prune > Pere > Pomi > $ >
Poate ca-mi ajung mesajele greu si deja sunt 100 de raspunsuri dar just in case ca nu a raspuns nimeni pana acum: 1) iti da acelasi rezultat pentru ca ai un spatiu inainte de '\s' iar '\s' e ignorat de grep -E deci cele 2 comenzi sunt identice. 2) oricum aveai de doua ori + in a 2-a comanda ceea ce nu ar fi fost necesar 3) ca sa faci ce vrei folosesti: egrep '^ +P' test.txt sau daca vrei sa prinzi si tab-urile: egrep '^[[:space:]]+P' test.txt sau daca tii neaparat sa folosesti \s atunci incerci: grep -P '^\s+P' test.txt s. ______________________________________________________________________ This e-mail may be privileged and/or confidential, and the sender does not waive any related rights and obligations.Any distribution, use or copying of this e-mail or the information it contains by other than an intended recipient is unauthorized.If you received this e-mail in error, please advise me (by return e-mail or otherwise) immediately. _______________________________________________ RLUG mailing list [email protected] http://lists.lug.ro/mailman/listinfo/rlug
