Pobranie konkretnej wartości ze stringa.

0

Witam.
Mam taki o to String: {"self":"https://jakisadres.com/rest/api/2/customFieldOption/10342","value":"Email","id":"10342"}
Problem polega na tym, że nie wiem jak pobrać wartość, która znajduje się w cudzysłowie za napisem "value": - w tym przypadku jest to "Email"
Prosze o jakieś porady.

1

Mnie to bardziej wygląda na jakiegoś JSON'a. Wtedy wartość pobierasz normalnie z obiektu.
Jeśli to na pewno jest string, to jakimś regexem będzie trzeba.
Napisz coś więcej - gdzie to masz, jak to pobierasz, z czego korzystasz.

0

Może kawałek kodu coś podpowie:

public Map<String, String> issueDetails (String key, JiraRestClient client){
        IssueRestClient issueClient = client.getIssueClient();
		Issue issue = issueClient.getIssue(key).claim();
		System.out.println(issue.getField("customfield_10900").getValue());
		Map<String, String> issueDetails2 = new HashMap<String, String>();
issueDetails2.put("initialization", issue.getField("customfield_10900").getValue().toString());
System.out.println(issue.getField("customfield_10900").getValue().toString());

Jest to kawałek kodu pobierający wartość inicjalizacji zgłoszenia w Jira Atlassian

0
String temp = "{"self":"https:\/\/jakisadres.com\/rest\/api\/2\/customFieldOption\/10342","value":"Email","id":"10342"}";
temp = temp.substring(temp.indexOf("\"value\":\"" +9);
temp = temp.substring(0, temp.indexOf("\"")); 
return temp;

coś w ten deseń.

0

Usuwasz pierwszy i ostatni znak (brackety - "{" oraz "}"). Potem split po "","" (przecinek pomiędzy dwoma cudzysłowiami), potem każdy element dzielisz znowu po "":"" (dwukropek pomiędzy dwoma cudzysłowiami) i usuwasz znaki """ (cudzysłów) na początku pierwszego i końcu drugiego elementu.
W rezultacie dostajesz tablicę dwuelementowych tablic, którą możesz sobie np. skonwertować do mapy, ewentualnie wybrać taką dwuelementową tablicę, której pierwszy element będzie równy "value".

Jeśli korzystasz z Javy 8 to można to zrobić w jednej linijce za pomocą Streamów.

1

Przecież to JSON. użyj jacksona/gson 'a

0

Faktycznie to JSON. Głupie niedopatrzenie, dzięki za pomoc!

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