Přejít k hlavnímu obsahu
SŠMG
  • Titulní stránka
  • Další
Momentálně na stránky přistupujete s právy hosta.
Přihlášení
Titulní stránka
  1. PVA 4.I - 2023/2024
  2. Textové řetězce

Textové řetězce

Požadavky na absolvování
Termín: Úterý, 7. listopadu 2023, 23.59

V tomto cvičení se budeme věnovat práci s textovými řetězci v programovacím jazyce Java. V Javě je textový řetězec reprezentován třídou String, která nabízí mnoho užitečných metod pro manipulaci s textem. Naše úloha se zaměří právě na tyto metody a jejich využití při zpracování různých textových dat.

Tip: Pro porovnání dvou textových řetězců v Javě nelze použít operátor ==, ale je nutné využít metody equals(String).

Definice metod
  1. Metoda splitName(String fullName):

    • Tato metoda rozdělí zadané plné jméno na křestní jméno a příjmení a vrátí je jako pole dvou řetězců. Jméno a příjmení jsou odděleny jednou mezerou.
    • Příklad použití: splitName("John Doe") vrátí pole ["John", "Doe"].
    • Speciální případ: splitName("First Middle Last") vrátí pole ["First", "Middle Last"].
    • Speciální případ: splitName("Ronaldino") vrátí pole ["Ronaldino"].

  2. Metoda replaceWords(String originalText, String[] wordsToReplace, String replacement):

    • Tato metoda nahradí všechny výskyty určených slov ve zadaném textu novým slovem.
    • Příklad použití: replaceWords("Hello world, hello universe.", {"Hello","hello"}, "Hi") vrátí "Hi world, Hi universe.".

  3. Metoda removeDiacritics(String text):

    • Tato metoda odstraní diakritiku (háčky, čárky apod.) ze zadaného textu.
    • V této metodě musíš pracovat s jednotlivými znaky pomocí primitivního datového typu char.
    • Příklad použití: removeDiacritics("Příliš žluťoučký kůň") vrátí "Prilis zlutoucky kun".

  4. Metoda extractDateFromURL(String url):

    • Tato metoda z URL adresy získá datum ve formátu "yyyy-MM-dd".
    • K testu, zda je daný řetězec v tomto formátu můžete využít metodu třídy String matches(String), do níž jako vstup umístíte korektní regulární výraz, čímž si vynutíte správný formát.
    • Příklad použití: extractDateFromURL("https://example.com/news/2023-07-15") vrátí "2023-07-15".

  5. Metoda formatTimestamp(long timestamp):

    • Tato metoda převede časové razítko na textovou reprezentaci ve formátu "dd.MM.yyyy HH:mm".
    • Pomoci s řešením by vám měla třída SimpleDateFormat.
    • Příklad použití: formatTimestamp(1626356400000L) vrátí "15.07.2021 15:40".

Hodnocení úlohy

Úspěšnost vašeho řešení bude automaticky hodnocena na základě úspěšnosti jednotlivých metod. Každý průchozí test značí správně implementovanou metodu.

  • 0 - 1 úspěšný test: Známka 5
  • 2 úspěšné testy: Známka 4
  • 3 úspěšné testy: Známka 3
  • 4 úspěšné testy: Známka 2
  • 5 úspěšných testů: Známka 1

Váha známky je 5.

Podpora úlohy

Pro implementaci úlohy máte k dispozici následující soubory:

  1. Implementujte soubor (ve složce src/main/java v balíčku org.example) TextUtils.java.

  2. Testy máte k dispozici v souboru (ve složce src/test/java) TextUtilsTest.java.

  • TextUtils.java TextUtils.java
    31. července 2023, 09.58
  • TextUtilsTests.java TextUtilsTests.java
    31. července 2023, 09.58
Kontaktujte podporu stránek
Momentálně na stránky přistupujete s právy hosta. (Přihlášení)
Souhrn uchovávaných dat
Stáhněte si mobilní aplikaci
Používá Moodle