Tühikute eemaldamine stringist C#-s

Tuhikute Eemaldamine Stringist C S



C#-s tähistatakse tühikumärke tühiku, tabelduse, reavahetuse, käru tagastamise ja muude sarnaste tähemärkidega. Tühikute eemaldamine stringist on stringidega manipuleerimisel tavaline ülesanne, eriti kui tegemist on kasutaja sisendite, failitöötluse ja andmete sõelumisega. Selles artiklis käsitletakse erinevaid meetodeid, kuidas C#-s stringist tühikuid eemaldada.

Mis on tühikud?

Tühikud on märgid, mis tähistavad tühje või tühikuid tekstistringis. Tavaliselt kasutatakse neid sõnade ja muude tekstielementide eraldamiseks ning teksti loetavuse ja visuaalse välimuse parandamiseks.







Programmeerimisel hõlmavad tühikud selliseid märke nagu tühikud, tabeldusmärgid, reavahetused ja käru tagastus. Paljudes programmeerimiskeeltes eiratakse tühikuid või käsitletakse neid ebaolulistena koodi töötlemisel või tõlgendamisel, kuid need võivad mõjutada koodi paigutust, vormindamist ja süntaksit.



Kuidas stringist tühikuid eemaldada

Tühikute eemaldamine või manipuleerimine on stringide töötlemisel ja tekstiga töötlemisel tavaline ülesanne. Tekstisisendite normaliseerimine või standardiseerimine hõlmab sageli vajadust eemaldada või asendada tühikud. Koodi funktsionaalsust või andmete täpsust mõjutada võivate mittevajalike märkide eemaldamiseks või koodi tõhususe ja loetavuse parandamiseks on siin mõned selle tegemiseks.



1: String.Replace() meetodi kasutamine

Stringist tühikute lihtsaks eemaldamiseks saab kasutada meetodit String.Replace(). Selle stsenaariumi korral saame määrata tühiku ' ' vana väärtusena ja tühja stringi '' uue väärtusena. Seda tehes eemaldatakse tõhusalt kõik stringi tühikud.





süsteemi kasutamine;

klassi valgerütm
{
staatiline tühimik Peamine ( string [ ] args )
{
string originalString = 'Tere, Sam!' ;
string trimmedString = originaalString.Asenda ( ' ' , '' ) ;
Console.WriteLine ( kärbitudString ) ;
}
}


See programm sisaldab kasutuslauset, mis impordib süsteemi nimeruumi, mis on vajalik konsooli klassi konsooli sisendiks ja väljundiks kasutamiseks.

Meetodi Main raames initsialiseerime stringi muutuja nimega originalString väärtusega 'Tere, Sam!'.



Järgmisena deklareerime teise stringimuutuja nimega trimmedString ja määrame sellele meetodi Replace() kutsumise tulemuseks originaalStringis. The Asenda () meetodit kutsutakse kahe argumendiga: esimene argument tähistab vana alamstringi, mida soovime asendada, mis antud juhul on tühikumärk ' ' ja teine ​​argument tähistab uut alamstringi, millega soovime selle asendada, nimelt tühja stringi ''.

2: String.Join() meetodi kasutamine

Teine viis tühikute eemaldamiseks stringist on jagada string alamstringi massiiviks, kasutades meetodit String.Split() ja seejärel ühendada alamstringid uuesti kokku, kasutades String.Join() meetod. Tühjade alamstringide kõrvaldamiseks, mis võivad tekkida järjestikustest tühikutest, saame kasutada suvandit StringSplitOptions.RemoveEmptyEntries.

süsteemi kasutamine;

klassi valgerütm
{
staatiline tühimik Peamine ( string [ ] args )
{
string originalString = 'Tere, Sam!' ;
string [ ] alamstringid = originalString.Split ( uus täht [ ] { '' } , StringSplitOptions.RemoveEmptyEntries ) ;
string trimmedString = String.Liitu ( '' , alamstringid ) ;
Console.WriteLine ( kärbitudString ) ;
}
}


Selles koodis on stringi muutuja 'originalString' deklaratsioon ja see lähtestatakse väärtusega 'Tere, Sam!' ja seejärel jagatakse alamstringideks, kasutades eraldajana tühikut. Suvandit RemoveEmptyEntries kasutatakse tühjade alamstringide välistamiseks saadud massiivist.

Seejärel kasutab kood String.Join() meetod mittetühjade alamstringide ühendamiseks ühtseks stringiks, kasutades eraldajana tühja stringi.

Lõpuks kasutab kood kärbitud stringi kuvamiseks konsooliaknas Console.WriteLine'i. Selle koodi käivitamisel võite oodata väljundit 'Tere, Sam!' prinditakse konsoolile.

3: Regulaaravaldiste kasutamine

Regulaaravaldised pakuvad tõhusat viisi stringide mustrite sobitamiseks ja asendamiseks. Kasutades Regex.Replace() meetodil saame stringist tõhusalt eemaldada kõik tühimärgid.

süsteemi kasutamine;
kasutades System.Text.RegularExpressions;

klassi tühik
{
staatiline tühimik Peamine ( string [ ] args )
{
string originalString = 'Tere, Sam!' ;
string trimmedString = Regex.Asenda ( OriginalString, @ '\s+' , '' ) ;
Console.WriteLine ( kärbitudString ) ; '
}
}


Selles koodis deklareeritakse stringi muutuja nimega 'originalString' ja lähtestatakse väärtusega 'Tere, Sam!'. Seejärel kasutab kood meetodit Regex.Replace(), et asendada üks või mitu tühimärki (mida kujutab regulaaravaldis \s+) tühja stringiga.

Lõpuks kasutab kood käsku Console.WriteLine(), et väljastada kärbitud string konsooliaknasse ja selle programmi käivitamisel näete väljundit 'Tere, Sam!' prinditakse konsooli.

Selles konkreetses näites kasutatakse regulaaravaldise mustrit @”\s+”, et sobitada üks või mitu tühimärki (sh tühikud, tabeldusmärgid ja reavahetused) ning seejärel asendatakse need tühja stringiga.

4: LINQ kasutamine

Samuti saame LINQ-i abil stringist tühimärke eemaldada. Me saame kasutada meetodit Where(), et filtreerida välja tühimärgid ja seejärel ühendada ülejäänud märgid uuesti kokku, kasutades String.Concat() meetod.

süsteemi kasutamine;
kasutades System.Linq;

klassi tühik
{
staatiline tühimik Peamine ( string [ ] args )
{
string originalString = 'Tere, Sam!' ;
string trimmedString = uus string ( OriginalString.Where ( c = > ! char.IsWhiteSpace ( c ) ) .ToArray ( ) ) ;
Console.WriteLine ( kärbitudString ) ;
}
}


Selles koodilõigul deklareeritakse stringi muutuja nimega 'originalString' ja lähtestatakse väärtusega 'Tere, Sam! “. Seejärel loob see uue stringimuutuja nimega trimmedString, kasutades LINQ-avaldist, mis filtreerib algsest stringist välja kõik tühimärgid. Märkide filtreerimiseks kasutatakse laiendusmeetodit Where() ja saadud märgid teisendatakse massiiviks ja edastatakse uuele stringikonstruktorile, et luua uus string.

Lõpuks kasutab kood kärbitud stringi konsooliaknasse väljastamiseks funktsiooni Console.WriteLine(). Selle koodi käivitamisel võite oodata väljundit 'Tere, Sam!' kuvatakse konsoolil.

Järeldus

C#-s on stringist tühikute eemaldamiseks erinevaid meetodeid ja need on meetod String.Replace(), meetod String.Join(), kasutades regulaaravaldisi ja kasutades LINQ-d. Väga oluline on valida tõhus, vastupidav ja kergesti mõistetav meetod, mis võimaldab hõlpsat hooldamist ja loetavust.