Możesz również to zrobić, aby zapobiec rozpoczynaniu lub kończeniu słów podkreśleniami, takimi jak _words_more_words_. Pozwoli to uniknąć rozpoczynania i kończenia spacjami.
$trimmed = trim($string);// Trims both ends
$convert = str_replace('','_', $trimmed);
Jest to interesujące, ponieważ spacje na początku / końcu linii nie zostaną zastąpione przez _, ale zamiast tego zostaną usunięte. Jednak pamiętaj, że może / usunie również inne znaki z początku / końca ciągu jako (\ r i \ n lub tabulatory).
Paul,
1
To jest część mojego kodu, która zamienia spacje w podkreślenia w celu nazwania moich plików:
Strtrzastępuje pojedyncze znaki zamiast ciągów, więc jest to dobre rozwiązanie dla tego przykładu. Podobno strtrjest szybszy niż str_replace(ale w tym przypadku oba są niezmiernie szybkie).
Fajnie, gdyby ktoś zamienił spacje na „_” w wielu długich plikach (logach?), To mogłoby to być mierzalnie szybsze? (Chociaż nie ma dowodu / odniesienia, może to być interesująca odpowiedź dla każdego, kto jest zainteresowany szybkością wykonania).
Paul,
Hej Paul, tak mi się wydaje. Wypróbuj i porównaj.
Thoracius Appotite
0
str_replace- to oczywiste rozwiązanie. Ale czasami musisz wiedzieć, jakie dokładnie są miejsca. Mam problem ze spacjami z pliku csv.
Były dwa znaki, ale jeden z nich to 0160 (0x0A0), a drugi był niewidoczny (0x0C2)
moje ostateczne rozwiązanie:
$str = preg_replace('/\xC2\xA0+/','', $str);
Znalazłem niewidoczny symbol z przeglądarki HEX z mc (przeglądarka północy - F3 - F9)
http://php.net/manual/en/function.str-replace.php
źródło
Użyj funkcji str_replace w PHP.
Coś jak:
źródło
Zadzwoń na http://php.net/str_replace :
$input = str_replace(' ', '_', $input);
źródło
Użyj str_replace :
źródło
Możesz również to zrobić, aby zapobiec rozpoczynaniu lub kończeniu słów podkreśleniami, takimi jak _words_more_words_. Pozwoli to uniknąć rozpoczynania i kończenia spacjami.
źródło
To jest część mojego kodu, która zamienia spacje w podkreślenia w celu nazwania moich plików:
źródło
Używałem w ten sposób
źródło
możesz użyć
str_replace
powiedz, że twoje imię jest w zmiennej$name
innym sposobem jest użycie wyrażenia regularnego, ponieważ pomoże to wyeliminować przestrzeń 2-czasową itp.
źródło
Strtr
zastępuje pojedyncze znaki zamiast ciągów, więc jest to dobre rozwiązanie dla tego przykładu. Podobnostrtr
jest szybszy niżstr_replace
(ale w tym przypadku oba są niezmiernie szybkie).źródło
str_replace
- to oczywiste rozwiązanie. Ale czasami musisz wiedzieć, jakie dokładnie są miejsca. Mam problem ze spacjami z pliku csv.Były dwa znaki, ale jeden z nich to 0160 (0x0A0), a drugi był niewidoczny (0x0C2)
moje ostateczne rozwiązanie:
Znalazłem niewidoczny symbol z przeglądarki HEX z mc (przeglądarka północy - F3 - F9)
źródło
'/\s+/'
?