jazzy Napisano Sierpień 28, 2007 Zgłoszenie Share Napisano Sierpień 28, 2007 czy ktos wie co pod feroda dziala jako rozdzielacz stringow. wszedzie pisza,ze 'split', ale u mnie split sluzy to dzielenia plikow, a ja chce rozdzielic najbanalniejszy string np. po spacjach 'ala ma kota' -> ala ma kota prosze wybaczyc banalnosc mojego problemu, ale jestem poczatkujacym linuxowcem Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Sierpień 28, 2007 Zgłoszenie Share Napisano Sierpień 28, 2007 Nie ma czegoś takiego jak konkretny separator dla całego systemu (zreszta nie tylko w uniksach). Separatorem argumentów dla programu czy skryptu jest zazwyczaj spacja (chyba, że programista określi inaczej). Separatorem przy określaniu ścieżki dostępu (zmienna systemowa PATH) jest ":" (dwukropek). Jakby się zastanowić, to pewnie i inne przykłady innych znaków by się znalazło. Podaj jakiś konkretny przyklad. Gdzie piszą o tym splitowaniu? W odniesieniu do jakiej sytuacji? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
jazzy Napisano Sierpień 28, 2007 Autor Zgłoszenie Share Napisano Sierpień 28, 2007 Podaj jakiś konkretny przyklad. Gdzie piszą o tym splitowaniu? W odniesieniu do jakiej sytuacji? Divide up a USENET group name into its hierarchical components: split "comp.lang.tcl.announce" . => comp lang tcl announce See how the split command splits on every character in splitChars, which can result in information loss if you are not careful: split "alpha beta gamma" "temp" => al {ha b} {} {a ga} {} a Zupenie to nie idzie u mnie na kompie i nie wiem czemu tak jakby moja funkcja split byla inna od tej nawet w manualu jest opis, ktory pokauje zupenie inna skladnie a potrzebuje tego typu funkcji do stringow moze znasz jakas inna ? ---- łączenie postów ---- po prostu musze podzielic string na kawalki wedlug spacji i tyle a ja nie wiem, jak je zrobic zeby sie zbytnio nie nameczyc Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Sierpień 28, 2007 Zgłoszenie Share Napisano Sierpień 28, 2007 Nadal nie wiem czy dobrze rozumiem. Podaj podstawowe informacje o tym co robisz. Skrypt w jakiejś powłoce (bash, ksh, csh)? Program w C? Skąd bierzesz ten łańcuch? Parametr skryptu/programu? Jakimi znakami jest oddzielony? P.S. Nie piszu postu pod postem, korzystaj z przycisku "EDYTUJ" Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
jjj Napisano Sierpień 28, 2007 Zgłoszenie Share Napisano Sierpień 28, 2007 Hm, czytasz helpa o funkcji split w TCL-u, a używasz systemowego programu split do dzielenia plików na kawałki. To są zupełnie różne rzeczy. Najlepiej napisz sobie programik w TCL lub perlu (wtedy będzie tak jak w Twoim helpie), ale uruchamiaj je za pomocą interpreterów tych języków. Możesz też użyć programu systemowego tr: echo "ala ma kota" | tr " " "\n" (split robi co innego). Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Sierpień 28, 2007 Zgłoszenie Share Napisano Sierpień 28, 2007 Z tego co sobie odświeżyłem z basha to jest jeszcze zmienna specjalna IFS. Domyślnie ustawiona na wartości spacja, tabulacja i nowa linia. Można ją oczywiście przedefiniować np. bash-2.05a$ export IFS=. bash-2.05a$ read lancuch aaa.bbb.ccc bash-2.05a$ echo $lancuch aaa bbb ccc bash-2.05a$ Jak widać kropki zniknęły, bo zostały odczytane jako separator. Żeby przywrócić domyslne wartości $IFS należy wykonac polecenie bash-2.05a$ unset IFS bash-2.05a$ read lancuch aaa.bbb.ccc bash-2.05a$ echo $lancuch aaa.bbb.ccc bash-2.05a$ [EDIT]jazzy skąd pomysł żeby umieścić ten topic w dziale "Serwery i zarządzanie"? Przenoszę. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się