Ezt a feladatot hogyan kell megoldani?
6. Olvassunk be egy szöveget, majd írassuk ki a képernyőre a beolvasott szövegből az összes < és > jelek közé írt részeket, mindegyiket új sorba.
Például ha megadjuk a "<Gabor> és Denes <fel>masztak <a diofa>ra." mondatot, a program ezt írja ki:
Gabor
fel
a diofa
Előre is köszönöm a segítséget.
```java
Pattern p = Pattern.compile("<(.*?)>");
Matcher m = p.matcher(input);
while (m.find()) {
System.out.println(m.group(1));
}
```
Javascript:
'<Gabor> és Denes <fel>masztak <a diofa>ra.'.match(/<(.[^>]*)>/g).join('\n').replace(/<|>/g,'');
A TDD-s feladat iskolapéldája, leszámítva, hogy a néhány szélsőséges eset nincs megadva (pl. két < egymás után). :)
A regex egyébként valóban adja magát, de ehhez sincsenek lefedve a "hibás" inputok. Ha van kinek, érdemes lehet jelezni.
A feladatsorból látszik, hogy minden adott hozzá, hogy össze lehessen rakni. Az előző feladatok a ciklust gyakoroltatják, itt is azt kell használni.
Az 1. feladathoz hasonlóan, karakterenként kell menni a szövegen. Ha '<'-hez érünk, eltároljuk, hogy most benne vagyunk egy kiírandó szakaszban (boolean a barátod), '>'-nél pedig az ellenkezőjét tároljuk el. Egyébiránt, ha benne vagyunk egy kiírandó szakaszban, akkor kiírunk, '>' esetén pedig sortörést is kipakolunk.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!