
Javassa on useita tapoja poistaa tyhjät rivit merkkijonosta. Suosituin menetelmä sisältää säännöllisten lausekkeiden ja korvaa kaikki() menetelmä jono luokkaa. Seuraava Java-koodinpätkä osoittaa, kuinka tämä saavutetaan:
public String removeEmptyLines(String input) {
return input.replaceAll("(?m)^[ t]*r?n", "");
}
Ensin puretaan koodi ymmärtääksemme, miten se toimii. The poistaEmptyLines() menetelmä ottaa merkkijonon syötteen, ja menetelmässä käytämme korvaa kaikki() menetelmä, joka on osa String-luokkaa. Tämä menetelmä vaatii kaksi parametria – ensimmäinen on sovitettava säännöllinen lausekemalli ja toinen on korvaava merkkijono.
Säännöllinen lauseke (?m)^[ t]*r?n käytetään vastaamaan merkkijonon tyhjiä rivejä. Tässä on vaiheittainen selitys säännöllisestä lausekkeesta:
1. (?m) on lippu, joka osoittaa, että regex-moottorin tulee käsitellä syöttömerkkijonoa monirivisenä merkkijonona. Tämä tarkoittaa, että riviankkureiden alku (^) ja loppu ($) eivät täsmää vain syötteen alun ja lopun kanssa, vaan myös jokaisen syötteen rivin alun ja lopun kanssa.
2. ^ on rivin alkuankkuri, joka vastaa jokaisen rivin alkua.
3. [t]* vastaa mitä tahansa määrää välilyöntejä tai sarkainmerkkejä rivin alussa. Tämä on hyödyllistä poistaa rivit, jotka sisältävät vain välilyöntejä.
4. r?n vastaa rivinvaihtomerkkejä. The ? symbolia käytetään osoittamaan, että rivinvaihtomerkki (r) on valinnainen.
Keskustellaan nyt joistakin tähän ongelmaan tai vastaaviin ongelmiin liittyvistä kirjastoista ja toiminnoista.
Java säännölliset lausekkeet
Java tarjoaa tehokkaita työkaluja säännöllisten lausekkeiden käsittelyyn java.util.regex paketti. Tämä paketti sisältää kaksi perusluokkaa – Kuvio ja matchers.
- Kuvio: Edustaa säännöllisen lausekkeen käännettyä esitystä. Se tarjoaa erilaisia apumenetelmiä ja vakioita säännöllisten lausekkeiden kanssa työskentelemiseen.
- matchers: Toimii yhdessä Kuvio luokka suorittaa täsmäysoperaatioita merkkijonoille.
Java-merkkijonojen manipulointi
Java tarjoaa laajan valikoiman menetelmiä merkkijonojen käsittelyyn jono luokkaa. Jotkut yleisimmin käytetyistä menetelmistä ovat:
- jakaa(): Jakaa merkkijonon alimerkkijonojen joukoksi määritetyn erottimen perusteella.
- liittyä seuraan(): Yhdistää joukon merkkijonoja yhdeksi merkkijonoksi käyttämällä määritettyä erotinta.
- trimmata(): Poistaa merkkijonosta alkavat ja lopussa olevat välilyönnit.
- korvaa (): Korvaa kaikki tietyn merkin tai alimerkkijonon esiintymät merkkijonossa toisella merkillä tai osamerkkijonolla.
Yhteenvetona voidaan todeta, että tyhjien rivien poistaminen merkkijonosta on yleinen tehtävä Java-ohjelmoinnissa ja se voidaan tehdä helposti käyttämällä säännöllisiä lausekkeita ja korvaa kaikki() menetelmä jono luokkaa. Säännöllisten lausekkeiden toiminnan ymmärtäminen ja Javan tarjoamat erilaiset merkkijonojen käsittelytavat auttavat ratkaisemaan erilaisia tekstinkäsittelyongelmia.