Hoe speciale tekens uit string in PHP te verwijderen

How Remove Special Characters From String Php



Soms moet u voor programmeerdoeleinden speciale tekens uit een tekenreeks verwijderen. PHP heeft veel ingebouwde functies die kunnen worden gebruikt om speciale tekens uit stringgegevens te verwijderen. Deze tutorial laat je zien hoe je een paar verschillende soorten ingebouwde PHP-functies kunt gebruiken om speciale tekens uit een string te verwijderen.

De str_replace() Functie

Een handige functie die kan worden gebruikt om speciale tekens uit een tekenreeks te verwijderen, is de str_replace() functie. De lege tekenreeks moet worden gebruikt om het teken te vervangen in deze functie om het opgegeven teken te verwijderen. De syntaxis van deze functie wordt hieronder gegeven.







str_replace ($search_str, $replace_str, $main_str [,$tel ])

De str_replace() functie kan vier argumenten aannemen. De eerste drie argumenten zijn verplicht en het laatste argument is optioneel. De $search_str variabele slaat de waarde op waarnaar in de tekenreeks wordt gezocht. De $replace_str variabele slaat de waarde op die wordt vervangen door de tekenreeks waar de zoektekst overeenkomt. U moet een lege tekenreeks gebruiken als de waarde van de $replace_str variabele om de zoektekst uit de hoofdreeks te verwijderen. De $tel argument slaat een waarde op die aangeeft hoeveel tekens worden vervangen of verwijderd.



Voorbeeld: met behulp van str_replace() om speciale tekens te verwijderen

Het volgende script toont het gebruik van de str_replace() functie om een ​​speciaal teken uit een reeks gegevens te verwijderen. Een door de gebruiker gedefinieerde functie wordt in het script gedeclareerd om de vervangingstaak uit te voeren. De hash(#), enkel aanhalingsteken(') en puntkomma(;) tekens worden gebruikt als zoektekens, terwijl de lege tekenreeks wordt gebruikt als vervangende tekst voor deze tekens.





/* Het volgende script zal enkele verwijderen

speciale tekens uit een string met str_replace()

functie

* /




//Definieer de hoofdreeks

$mainstr = '#Dit is een simpele tekst;';



//De uitvoer voor verwijderen

gooide uit ' Tekst voor verwijderen:
'
.$mainstr;



//Bel de functie

$replacestr =rm_special_char($mainstr);



//Definieer de functie om het spatiële teken te verwijderen

functierm_special_char($ str) {

//Verwijder '#',''' en ';' de functie str_replace() gebruiken

$resultaat = str_replace ( reeks ('#', '' ', ';'), '', $ str);

//De uitvoer na verwijderen

gooide uit '
Tekst na verwijderen:
'
.$resultaat;

}

?>

Uitgang:





De volgende uitvoer zal verschijnen na het uitvoeren van het bovenstaande script. De waarde van de hoofdtekst wordt afgedrukt voordat de . wordt aangeroepen str_replace() functie, en de drie speciale tekens worden uit de hoofdtekst verwijderd en later afgedrukt.



De preg_replace() Functie

De preg_replace() functie wordt gebruikt om tekenreeksgegevens te vervangen op basis van het zoekpatroon. De syntaxis van deze functie wordt hieronder gegeven.

preg_replace ( $patroon, $vervangen, $string [,$limiet [,$tel]] )

Deze functie kan vijf argumenten bevatten. De eerste drie argumenten zijn verplicht en de laatste twee argumenten zijn optioneel. De $patroon argument wordt gebruikt om het patroon te definiëren om de tekens in een tekenreeks te zoeken. De $vervangen argument wordt gebruikt om de vervangende tekst te definiëren, en de vervangende tekst zal een lege tekenreeks zijn die wordt gebruikt voor het verwijderen van de speciale tekens. De $string argument wordt gebruikt om de hoofdstring te definiëren waarin het patroon zal worden gezocht en vervangen.

Voorbeeld: preg_replace() gebruiken om speciale tekens te verwijderen

Het volgende script toont het gebruik van de preg_replace() functie om een ​​bepaald speciaal teken uit de tekenreeksgegevens te verwijderen. Het patroon '[0-9/[0-9%$?]/s' wordt in de functie gebruikt om naar de tekens te zoeken. Hiermee worden alle tekens '%', '$' en '?' in de tekenreeksgegevens doorzocht en worden deze tekens vervangen door de lege tekenreeks als de tekens bestaan.



/* Het volgende script zal enkele verwijderen

speciale tekens uit een string met preg_replace()

functie

* /




//Definieer de hoofdreeks

$mainstr = '200Ik vind het leuk'$phpprogrammeren50%?.';



//De uitvoer voor verwijderen

gooide uit ' Tekst voor verwijderen:
'
.$mainstr;



//Bel de functie

$replacestr =rm_special_char($mainstr);



//Definieer de functie om het spatiële teken te verwijderen

functierm_special_char($ str) {

//Verwijder '#',''' en ';' de functie str_replace() gebruiken

$resultaat = preg_replace ('/[0-9%$?]/s','', $ str);

//De uitvoer na verwijderen

gooide uit '
Tekst na verwijderen:
'
.$resultaat;

}

?>

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van het script. De waarde van de hoofdtekst wordt afgedrukt voordat de . wordt aangeroepen preg_replace() functie. De 200, 50, '%' en '?' tekens worden uit de hoofdtekst verwijderd en later afgedrukt.

De htmlspecialchars() en str_ireplace () Functies

De htmlspecialchars() en str_ireplace () functies worden gebruikt om alle vooraf gedefinieerde tekens om te zetten in HTML. Bijvoorbeeld, ' < ’ wordt omgezet in ‘ & ik , '' & ’ wordt omgezet in ‘ & ,' enz. U kunt deze functies gebruiken om het effect van vooraf gedefinieerde tekens uit de tekenreeksgegevens te verwijderen.

Voorbeeld: met behulp van htmlspecialchars() en str_ireplace () om speciale tekens te verwijderen

Het volgende script laat zien hoe u het effect van vooraf gedefinieerde tekens uit een tekenreeks kunt verwijderen met behulp van de htmlspecialchars() functie. Dan de str_ireplace () functie wordt gebruikt om de HTML-entiteiten uit de tekst te verwijderen. De str_ireplace () functie werkt als de str_replace() functie, maar het kan hoofdletterongevoelige zoekopdrachten uitvoeren. De hoofdstring bevat tekst met< h2 > en< B > labels. Dus wanneer de tekst wordt afgedrukt voordat het effect van de vooraf gedefinieerde tekens is verwijderd, wordt de tekenreeks weergegeven met het effect van HTML-header en vetgedrukte tags. De platte tekst wordt weergegeven na het toepassen van de gegeven functies.





//Definieer de hoofdreeks

$mainstr = '

Welkom bij LinuxHint

'
;



//De uitvoer met HTML-tags

gooide uit 'Tekst voor verwijderen: '.$mainstr;



//De uitvoer na het verwijderen van HTML-tags

gooide uit 'Tekst na verwijderen:
'
.

str_ireplace ( reeks (' ', ' '
,'

','

'
),'',

htmlspecialchars ($mainstr));



?>

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van het script.

De trim()-functie

De trim() functie wordt gebruikt om specifieke tekens aan het begin en einde van een reeks gegevens te verwijderen. Deze functie kan geen tekens uit het midden van een reeks gegevens verwijderen. U kunt deze functie dus alleen gebruiken als u speciale tekens aan het begin en einde van een tekenreeks wilt verwijderen.

Voorbeeld: met behulp van de trim() Functie om speciale tekens te verwijderen

Het volgende script toont het gebruik van de trim() functie het verwijderen van de ' @ ' en ' ! ’ tekens vanaf het begin en einde van de tekenreeksvariabele $mainstr . De waarde van de $mainstr variabele wordt zowel voor als na het verwijderen van de tekens afgedrukt.





//Definieer de hoofdreeks

$mainstr = '@@Webprogrammeren!!!.';



// De uitvoer voordat trim() wordt gebruikt

gooide uit ' Tekst voor verwijderen:
'
.$mainstr;



// De uitvoer na het gebruik van trim ()

gooide uit '
Tekst na verwijderen:
'
. trimmen ($mainstr,'@!');



?>

Uitgang:

De volgende uitvoer verschijnt na het uitvoeren van het script. Hier, twee ‘ @ ’-tekens worden vanaf het begin verwijderd en drie ‘ ! ’ tekens worden verwijderd aan het einde van de tekenreeksvariabele $mainstr .

Conclusie

Deze tutorial liet je vier verschillende manieren zien om speciale tekens uit stringgegevens te verwijderen. Ik hoop dat deze tutorial lezers zal helpen om de functies in dit artikel in hun script toe te passen.