Выделение из текста отдельных частей

217
16 апреля 2019, 07:00

Имею текст: "mech:type":"Car", "что-то":"ответ на что-то"

Как мне "отфильтровать" его, т.е. оставить только "Car" и "Ответ на что-то"?

Id у двух TextView: tView1 и tView2

Answer 1

Можно парсить это как JSONObject. Но я пишу как работать просто со строкой, имеющей строго указанную структуру. У меня строка находится в строковых ресурсах.

    //ищем границу между первой и второй частями
    String string = getString(R.string.json);
    int index = string.indexOf(",");
    //узнаем информацию о машине
    String carString = string.substring(0, index);
    carString = carString.substring(carString.lastIndexOf(":") + 1);
    //узнаем ответ на что-то
    String somethingString = string.substring(index + 1);
    somethingString = somethingString.substring(somethingString.lastIndexOf(":") + 1);

Надеюсь, установить значения для соответствующих текствьюх вы сможете самостоятельно)

Answer 2

Можно сделать через регулярные выражения, например:

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
    private static final Pattern PATTERN = Pattern.compile(":\"(\\w+|\\W+)\"");
    private static final String TEXT = "\"mech:type\":\"Car\", \"что-то\":\"ответ на что-то\"";
    public static void main(String[] args) {        
        Matcher matcher = PATTERN.matcher(TEXT);        
        List<String> results = new ArrayList<>();
        while (matcher.find()) {
            results.add(matcher.group(1));
        }
        System.out.println(results);
    }
}
READ ALSO
Ошибка при компиляции в IntelliJ IDEA [закрыт]

Ошибка при компиляции в IntelliJ IDEA [закрыт]

При компиляции вылазит такая ошибка, думал из за кодировки, все перепробывал не помогаетПомогите пожалуйста!

161
org.h2.jdbc.JdbcSQLException: Schema &ldquo;information_schema&rdquo; not found;

org.h2.jdbc.JdbcSQLException: Schema “information_schema” not found;

Решил гонять тесты через H2Аннотации над абстрактным тестом, от которого наследуются все остальные:

265
Запись в параметризованный массив Java

Запись в параметризованный массив Java

Имеется класс-обертка для параметризованного массива:

179
не отрабатывает авторизацию

не отрабатывает авторизацию

Реализую регистрацию и авторизацию пользователей для дальнейшего использования, с регистрацией проблем нем, все данные уходят в БД, а вот...

179