Usuwanie wierszy z tekstu

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
CHRISTOPCHER
Posty: 71
Rejestracja: 05 mar 2007 00:00

Usuwanie wierszy z tekstu

Post autor: CHRISTOPCHER »

Witam

Chciałbym się zapytać czy istnieje jakiś inny sposób usuwania określonych wierszy z tekstu, od tego zaprezentowanego na rys 1.

Moje rozwiązanie działa, jednak w sytuacji gdy zamieniam tekst na tablice tekstową, po to żeby po usunięciu dwóch wierszy zamienić, tablicę tekstową, z powrotem na tekst nie do końca wydaje mi się właściwe.

Pozdrawiam

CHRISTOPCHER
Ostatnio zmieniony 12 sty 2008 04:51 przez CHRISTOPCHER, łącznie zmieniany 1 raz.
Morfina
Posty: 7
Rejestracja: 25 gru 2007 21:19
Lokalizacja: Kraków
Kontakt:

Re: Usuwanie wierszy z tekstu

Post autor: Morfina »

Potrzeba więcej szczegółów:
usuwasz całą linijkę tekstu, czy może wyszukujesz w tekście określoną frazę,
lub kasujesz tekst o określonej długości począwszy od któregoś w kolejności znaku?
CHRISTOPCHER
Posty: 71
Rejestracja: 05 mar 2007 00:00

Re: Usuwanie wierszy z tekstu

Post autor: CHRISTOPCHER »

Uściślając chce usuwać całe linijki z tekstu, natomiast usunięte linie maja być zastępowane przez następne, jeśli istnieją.
Awatar użytkownika
maszup
Posty: 57
Rejestracja: 04 sty 2007 00:00
Lokalizacja: Wrocław

Re: Usuwanie wierszy z tekstu

Post autor: maszup »

Twoje rozwiazanie jest jak najbardziej wlasciwe, nalezy najpierw rozbic string na tablice i usunac okreslone wiersze, potem zlozyc tablice w string.

Jesli wykonujesz to wiele raz i chcesz usprawnic to proponuje rozwiazanie z rysunku. jest bardziej optymalne niz zwykly DELETE FROM ARRAY, bo nie wymaga dealokacji pamieci. w TRUE jest REPLACE ARRAY SUBSET, a w FALSE nie ma nic. na koncu RESHAPE ARRAY (mozna dac tez SPLIT 1D ARRAY). przy duzych tablicach i czestym stosowaniu ta metoda jest duzo szybsza niz zwykly DELETE.
Awatar użytkownika
wino
Posty: 549
Rejestracja: 23 gru 2005 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Kraków

Re: Usuwanie wierszy z tekstu

Post autor: wino »

tak powinno być dużo szybciej, jest tylko jedna pętla a nie tak jak w twoim przykładzie dwie.
Awatar użytkownika
maszup
Posty: 57
Rejestracja: 04 sty 2007 00:00
Lokalizacja: Wrocław

Re: Usuwanie wierszy z tekstu

Post autor: maszup »

nie widze zeby w moim przykladzie byly dwie petle, jest tylko jedna petla FOR.

poza tym twoje rozwiazanie tyczy sie tyko kasowania jednego elementu ze stringu i jest malo optymalne dla duzych stringow, bo jesliby tablica miala tysiace elementow i probowalebys usunac jeden z koncowych elementow to czas wykonywania tego bardzo sie wydluza.

rozwiazenie, ktore zapropnowalem (tak jak napisalem dla operacji wielokrotnych i na duzych stringach) bez wgledu, ktory i ile elementow chcemy usunac ze stringu wykonuje sie w podobnym czasie.

zalaczam VI, gdzie mozna sobie sprawdzic czas wykonywania dla tablicy np 100000 elementow z ktorej chcemy usunac np 10000 element. roznica w szybkosci dla obu algorytmow jest 10-krotna.

operacje na tablicach sa duzo bardziej optymalne niz na stringach.
Ostatnio zmieniony 13 sty 2008 18:37 przez maszup, łącznie zmieniany 1 raz.
CHRISTOPCHER
Posty: 71
Rejestracja: 05 mar 2007 00:00

Re: Usuwanie wierszy z tekstu

Post autor: CHRISTOPCHER »

Dziąkuje za zainteresowanie tematem i zaprezentowane rozwiazania. Właśnie w moim programie są analizowane bardzo dużo danych w postaci tekstowej, która po rozbiciu na tablice dochodzi do rozmiarów 700 wierszy po 7500 kolumn. Moje pytanie wynikało z faktu że długo trwa czas rozbicia takiego stringu na tablice, jednak jeśli to jest właściwa metoda, gdy chce usuwać całe wiersze postanowilem że konwersja będzie się odbywała jedynie na początku podczas odczytu danych z pliku i na końcu podczas zapisu, natomiast wszystkie operacje będą wykonywane na tablicach.

Pozdrawiam

CHRISTOPCHER
Ostatnio zmieniony 14 sty 2008 12:42 przez CHRISTOPCHER, łącznie zmieniany 1 raz.
Awatar użytkownika
wino
Posty: 549
Rejestracja: 23 gru 2005 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Kraków

Re: Usuwanie wierszy z tekstu

Post autor: wino »

no spoko:)

:-#
ODPOWIEDZ