Регулярные выражения не знаю)
package com.javarush.task.task15.task1527;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/*
Парсер реквестов
*/

public class Solution {
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        String str = reader.readLine();
        reader.close();

        String[] resultStr = str.split("\\?");
        String str1 = resultStr[1];

        String[] resStr2 = str1.split("\\&");

        for (int i = 0; i < resStr2.length; i++) {
            if (resStr2[i].contains("=")) {
                String temp1 = resStr2[i].substring(0, (resStr2[i].lastIndexOf("="))); //тут удаляется все что после равно и само равно
                System.out.print(temp1 + " ");
            } else {
                System.out.print(resStr2[i] + " ");
            }
        }

        for (int i = 0; i < resStr2.length; i++) {
            if (resStr2[i].contains("=")) {
                String temp1 = resStr2[i].substring(0, (resStr2[i].lastIndexOf("=")));
                if (temp1.equals("obj")) {
                    String oMyGod = resStr2[i].substring((resStr2[i].lastIndexOf("=") + 1));
                    System.out.println();
                    if (proverka(oMyGod))
                        alert(Double.parseDouble(oMyGod));
                    else
                        alert(oMyGod);
                }
            }
        }
    }

    public static boolean proverka(String stroka){
        try{
            Double.parseDouble(stroka);
            return true;
        }
        catch (Exception e){
            return false;
        }
    }
    public static void alert(double value) {
        System.out.println("double: " + value);
    }

    public static void alert(String value) {
        System.out.println("String: " + value);
    }
}