logo

Kā noņemt īpašās rakstzīmes no virknes Java

Rakstzīmi, kas nav alfabēta vai ciparu rakstzīme, sauc par īpašo rakstzīmi. Mums ir jānoņem no virknes visas īpašās rakstzīmes, lai mēs varētu skaidri un tekoši lasīt virkni. Speciālās rakstzīmes nav lasāmas, tāpēc pirms lasīšanas būtu labi tās noņemt.

Java aizvietotAll() metode

Java aizstāt visu () metode Stīga klase aizstāj katru šīs virknes apakšvirkni, kas atbilst dotajai regulārajai izteiksmei, ar aizstāšanu.

Sintakse

 public String replaceAll(String regex, String replacement) 

Šī metode tiek pieņemta divi parametri:

    regex:Tā ir regulārā izteiksme, kurai ir jāsaskaņo virkne. Tas var būt dažāda veida.nomaiņa:Virkne, kas jāaizstāj mačā.

Tas atgriež iegūtā virkne . Tas met PatternSyntaxException ja regulārās izteiksmes sintakse nav derīga. Iepriekš minētā metode dod tādu pašu rezultātu kā izteiksme:

 Pattern.compile(regex).matcher(str).replaceAll(repl) 

Speciālo rakstzīmju noņemšanas piemērs, izmantojot metodi aizstājietAll().

Nākamajā piemērā metode removeAll() no virknes noņem visas īpašās rakstzīmes un to vietā ievieto atstarpi.

 public class RemoveSpecialCharacterExample1 { public static void main(String args[]) { String str= 'This#string%contains^special*characters&.'; str = str.replaceAll('[^a-zA-Z0-9]', ' '); System.out.println(str); } } 

Izvade

 This string contains special characters 

Piemērs

Nākamajā piemērā visas īpašās rakstzīmes tiek aizstātas ar atstarpi.

 public class RemoveSpecialCharacterExample2 { public static void main(String args[]) { String str = 'Hello+-^Java+ -Programmer^ ^^-- ^^^ +!'; str = str.replaceAll('[-+^]*', ' '); //str=str.replaceAll('\W', ' ') //we can also use this regular expression System.out.println(str); } } 

Izvade

 Hello Java Programmer ! 

Speciālo rakstzīmju noņemšanas piemērs, izmantojot lietotāja definētu loģiku

Nākamajā piemērā mēs definējam loģiku speciālo rakstzīmju noņemšanai no virknes. Mēs zinām, ka lielo burtu alfabēta ASCII vērtība sākas no 65 līdz 90 (A-Z), bet mazo burtu ASCII vērtība sākas no 97 līdz 122 (a-z). Katru rakstzīmi salīdzina ar tai atbilstošo ASCII vērtību. Ja abi norādītie nosacījumi atgriež patiesu, tas atgriež patiesu, pretējā gadījumā atgriež false. The cilpai izpilda līdz virknes garumam. Kad virkne sasniedz savu izmēru, tā pārtrauc izpildi, un mēs iegūstam iegūto virkni.

atzīmes pasvītrojums
 public class RemoveSpecialCharacterExample3 { public static void main(String[] args) { //declare a string having special characters String str=&apos;Pr!ogr#am%m*in&amp;g Lan?#guag(e&apos;; String resultStr=&apos;&apos;; //loop execute till the length of the string for (int i=0;i64 &amp;&amp; str.charAt(i)<=122) returns true if both conditions { adding characters into empty string resultstr="resultStr+str.charAt(i);" } system.out.println('string after removing special characters: '+resultstr); < pre> <p> <strong>Output</strong> </p> <pre> String after removing special characters: ProgrammingLanguage </pre> <hr></=122)>