Czasami może być konieczne usunięcie znaków specjalnych z ciągu do celów programistycznych. PHP ma wiele wbudowanych funkcji, których można użyć do usunięcia znaków specjalnych z danych łańcuchowych. Ten samouczek pokazuje, jak używać kilku różnych typów wbudowanych funkcji PHP do usuwania znaków specjalnych z ciągu.
Funkcja str_replace()
Jedną z przydatnych funkcji, której można użyć do usunięcia znaków specjalnych z ciągu, jest str_replace() funkcjonować. Pusty ciąg musi być użyty do zamiany znaku w tej funkcji, aby usunąć określony znak. Składnia tej funkcji jest podana poniżej.
str_replace ($search_str, $replace_str, $main_str [,$count ])
ten str_replace() funkcja może przyjmować cztery argumenty. Pierwsze trzy argumenty są obowiązkowe, a ostatni argument jest opcjonalny. ten $search_str zmienna przechowuje wartość, która będzie przeszukiwana w ciągu. ten $replace_str zmienna przechowuje wartość, która zostanie zastąpiona z ciągu, do którego pasuje wyszukiwany tekst. Musisz użyć pustego ciągu jako wartości $replace_str zmienna, aby usunąć wyszukiwany tekst z głównego ciągu. ten $count argument przechowuje wartość reprezentującą liczbę zastępowanych lub usuwanych znaków.
Przykład: Używanie str_replace() usunąć znaki specjalne
Poniższy skrypt pokazuje użycie str_replace() funkcja do usuwania znaku specjalnego z ciągu danych. W skrypcie zadeklarowana jest funkcja zdefiniowana przez użytkownika w celu wykonania zadania zamiany. ten hash(#), pojedynczy cudzysłów(‘) i średnik(;) znaki są używane jako znaki wyszukiwania, podczas gdy pusty ciąg jest używany jako tekst zastępczy dla tych znaków.
/* Poniższy skrypt usunie niektóre
znaki specjalne z ciągu za pomocą str_replace()
funkcjonować
* /
//Zdefiniuj główny ciąg
$mainstr = '#To jest prosty'tekst;';
//Wyjście przed usunięciem
wyrzucił ' Tekst przed usunięciem:
'.$mainstr;
//Wywołaj funkcję
$replacestr =rm_special_char($mainstr);
//Zdefiniuj funkcję usuwania znaku spacji
funkcjonowaćrm_special_char($ str) {
//Usuń '#',''' i ';' za pomocą funkcji str_replace()
$wynik = str_replace ( szyk („#”, '' '', ';'), '', $ str);
//Wyjście po usunięciu
wyrzucił '
Tekst po usunięciu:
'.$wynik;
}
?>
Wyjście
Poniższe dane wyjściowe pojawią się po uruchomieniu powyższego skryptu. Wartość tekstu głównego jest wypisywana przed wywołaniem str_replace() funkcji, a trzy znaki specjalne są usuwane z tekstu głównego i drukowane później.
Funkcja preg_replace()
ten preg_replace() Funkcja służy do zastępowania danych łańcuchowych na podstawie wzorca wyszukiwania. Składnia tej funkcji jest podana poniżej.
preg_replace ( $wzór, $zamień, $string [,$limit [,$count]] )Ta funkcja może przyjmować pięć argumentów. Pierwsze trzy argumenty są obowiązkowe, a ostatnie dwa argumenty są opcjonalne. ten $wzór argument jest używany do zdefiniowania wzorca wyszukiwania znaków w ciągu. ten $zamień argument jest używany do zdefiniowania tekstu zastępczego, a tekst zastępczy będzie pustym ciągiem używanym do usuwania znaków specjalnych. ten $string argument służy do zdefiniowania głównego ciągu znaków, w którym wzorzec będzie przeszukiwany i zastępowany.
Przykład: Używanie preg_replace() do usuwania znaków specjalnych
Poniższy skrypt pokazuje użycie preg_replace() funkcja, aby usunąć określony znak specjalny z danych ciągu. W funkcji wyszukiwania znaków używany jest wzorzec „[0-9/[0-9%$?]/s”. Spowoduje to przeszukanie wszystkich znaków „%”, „$” i „?” w danych ciągu i zastąpienie tych znaków pustym ciągiem, jeśli takie znaki istnieją.
/* Poniższy skrypt usunie niektóre
znaki specjalne z ciągu znaków za pomocą preg_replace()
funkcjonować
* /
//Zdefiniuj główny ciąg
$mainstr = „200Lubię”$phpprogramowanie 50%?.';
//Wyjście przed usunięciem
wyrzucił ' Tekst przed usunięciem:
'.$mainstr;
//Wywołaj funkcję
$replacestr =rm_special_char($mainstr);
//Zdefiniuj funkcję usuwania znaku spacji
funkcjonowaćrm_special_char($ str) {
//Usuń '#',''' i ';' za pomocą funkcji str_replace()
$wynik = preg_replace („/[0-9%$?]/s”,'', $ str);
//Wyjście po usunięciu
wyrzucił '
Tekst po usunięciu:
'.$wynik;
}
?>
Wyjście
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu. Wartość tekstu głównego zostanie wydrukowana przed wywołaniem preg_replace() funkcjonować. ten 200, 50, „%” i „?” znaki zostaną usunięte z tekstu głównego i wydrukowane później.
ten htmlznaki specjalne() oraz str_replace () Funkcje
ten htmlznaki specjalne() oraz str_replace () funkcje służą do konwersji wszystkich predefiniowanych znaków na HTML. Na przykład, ' < ’ zostanie zamieniony na ‘ i to , '' & ’ zostanie zamieniony na ‘ & ,’ itp. Możesz użyć tych funkcji, aby usunąć efekt dowolnych predefiniowanych znaków z danych ciągu.
Przykład: Używanie htmlznaki specjalne() oraz str_replace () usunąć znaki specjalne
Poniższy skrypt pokazuje, jak usunąć efekt predefiniowanych znaków z ciągu za pomocą htmlznaki specjalne() funkcjonować. A później str_replace () Funkcja służy do usuwania encji HTML z tekstu. ten str_replace () funkcja działa jak str_replace() funkcji, ale może wykonywać wyszukiwania bez uwzględniania wielkości liter. Główny ciąg zawiera tekst z< h2 > i< b > tagi. Tak więc, gdy tekst zostanie wydrukowany przed usunięciem efektu predefiniowanych znaków, ciąg zostanie wyświetlony z efektem nagłówka HTML i pogrubionych znaczników. Zwykły tekst zostanie wyświetlony po zastosowaniu danych funkcji.
//Zdefiniuj główny ciąg
$mainstr = '
Witamy w LinuxWskazówka
';//Wyjście z tagami HTML
wyrzucił „Tekst przed usunięciem: ”.$mainstr;
//Wyjście po usunięciu tagów HTML
wyrzucił „Tekst po usunięciu:
'.
str_replace ( szyk (' ', ' ','
'
,''),'',htmlznaki specjalne ($mainstr));
?>
Wyjście
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu.
Funkcja przycinania ()
ten funkcja przycinania() służy do usuwania określonych znaków z początku i końca ciągu danych. Ta funkcja nie może usuwać znaków ze środka ciągu danych. Tak więc możesz użyć tej funkcji tylko wtedy, gdy chcesz usunąć znaki specjalne z początku i końca ciągu.
Przykład: Używanie funkcja przycinania () usunąć znaki specjalne
Poniższy skrypt pokazuje użycie funkcja przycinania() usunąć „ @ ' oraz ' ! ’ znaki od początku i końca zmiennej łańcuchowej $mainstr . Wartość $mainstr zmienna zostanie wydrukowana zarówno przed jak i po usunięciu znaków.
//Zdefiniuj główny ciąg
$mainstr = '@@Programowanie sieciowe!!!.';
//Wyjście przed użyciem trim()
wyrzucił ' Tekst przed usunięciem:
'.$mainstr;
//Wyniki po użyciu trim()
wyrzucił '
Tekst po usunięciu:
'. przycinać ($mainstr,„@!”);
?>
Wyjście
Poniższe dane wyjściowe pojawią się po uruchomieniu skryptu. Tutaj dwa „ @ ’ znaki są usuwane z początku, a trzy ‘ ! ’ znaki są usuwane z końca zmiennej łańcuchowej $mainstr .
Wniosek
W tym samouczku pokazano cztery różne sposoby usuwania znaków specjalnych z danych ciągu. Mam nadzieję, że ten samouczek pomoże czytelnikom w zastosowaniu funkcji zawartych w tym artykule w ich skrypcie.