Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Closed TopicStart new topic
> [PHP]zmiana znaku nowej linii
iksigrek
post 24.08.2009, 08:06:37
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.08.2009

Ostrzeżenie: (0%)
-----


Witam.

Jestem na etapie poznawania regEpxów i mam problem z usunięciem znaku nowej linii. Chciałbym go zastąpić znakiem spacji.
W stringu który przetwarzam udaje mi się zamienić znaki nowej linii, gdzie nowe linie zaczynają się od odstępów wyrażeniem /(\n[[:space:]]*)/
To działa. Jednak z jakiegoś powodu, gdy już "wyczyszczę" string - czyli pozostaną jedynie linia + znak nowej linii + nowa linia zaczynająca się znakiem od samego początku - nie udaje mi się zredukować znaków nowej linii do spacji. Próbowałem np /\n/ - zmiana na ' ', /\n$/, /[\n]/, (\n), (\n|$), (\n)$ i tego typu kombinacje. Nic nie wychodzi ; (

Dodam, że moim celem jest jak najskuteczniejsze zredukowanie niepotrzebnych znaków, tak by kod ważył jak najmniej. Nie musi być czytelny, jednak powinien się ładować jak najszybciej.
Go to the top of the page
+Quote Post
phpion
post 24.08.2009, 08:09:57
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Zwykłe str_replace elementów "\r\n", "\n", "\r" na spacje Ci nie wystarczy?
Go to the top of the page
+Quote Post
iksigrek
post 24.08.2009, 09:49:13
Post #3





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 19.08.2009

Ostrzeżenie: (0%)
-----


Nie do konca, bo to tez nie działało.
Jednak już wiem dlaczego. Problem tkwił w tym, że podawałem tablicę dla preg_replace i /(\n[[:space:]]*)/ + właśnie "\n" jako argument.
Skoro klasa [:space:] zawiera już \n, czego nie zauważyłem, do tego zamiast asteriksa trzeba wstawić +, by nie robiła się zadyma. Wystarczyło zrobić /([[:space:]]+)/ i jest git. Dzięki za pomoc mimo wszystko. pozdr.
Go to the top of the page
+Quote Post
Spawnm
post 24.08.2009, 10:22:18
Post #4





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




http://forum.php.pl/index.php?showtopic=128628&hl=
Go to the top of the page
+Quote Post

Closed TopicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 15.07.2025 - 02:53