Przeparsowanie tekstu, umożliwić wpisywanie górnych dolnych indeksów

Odpowiedz Nowy wątek
2015-01-15 10:39
Klamutix
0

W programie muszę umożliwić uzytkownikowi wprowadzanie nazw związków, które później są w bazie zapisywane i odczytywane. Baza UTF-8 i powinno to tam zostać zapisane już normalnie z indeksami górnymi/dolnymi, bo tak później będę wyświetlał. Wymyśliłem, by użytkownicy w textboxa(GUI Vaadin) wpisywali coś podobnego do Latexa np.: P4_{3}Pma^{22}, gdzie 3 to indeks górny a 22 to dolny. Taką konwencję chcę umożliwić tylko do wpisywania, później wyświetlane ma to być już normalnie czytelnie.

Pozostało 580 znaków

2015-01-15 12:52
0

A jakie jest pytanie?


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell

Pozostało 580 znaków

2015-01-16 08:26
Klamutix
0

Jak wykonać takie przeparsowanie jak opsiałem.

Pozostało 580 znaków

2015-01-20 13:08
Dorodny Włos
0

Ale co ma dokładnie wyjść jak uzytkownik wpisze np. to: P4_{3}Pma^{22}

Pozostało 580 znaków

2015-01-21 08:38
Klamutix
0

Mogłaby to być metoda np.:

public static String parseFormula(String a){
...
}

Dokładne wyniki np.:
wejście: P4_{3}Pma^{22}
wyjście: P4₃Pma²²

wejście: T{1}B_{10}Ku{327}
wyjście: T¹B₁₀Ku₃₂₇

itp.:
znalazłem znaki dostępne, których chciałbym używać. Dobrze się w bazie zapisują i odczytują bez problemów z kodowaniem. (używam UTF-8)
⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹ ₀ ₁ ₂ ₃ ₄ ₅ ₆ ₇ ₈ ₉

edytowany 2x, ostatnio: bogdans, 2016-12-13 18:26

Pozostało 580 znaków

2015-01-21 08:39
Klamutix
0

Coś się popsuło z drugim przykładem, może teraz będzie ok:

wejście:    P4_{3}Pma^{22}
wyjście:    P4₃Pma²²

wejście:    T^{1}B_{10}Ku^{327}
wyjście:    T¹B₁₀Ku₃₂₇

Pozostało 580 znaków

2015-01-21 09:22
0

A co ma wyjść, gdy użytkownik popełni błąd, i w indeksach wpisze coś innego niż cyfry P4_{3a}ma^{22}


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell

Pozostało 580 znaków

2015-01-21 09:27
Klamutix
0

Wtedy mamy błąd parsowania i metoda wystarczy, że zwróci np. nulla w takim przypadku.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0