Как найти числа в строке java

Аватар пользователя Сергей Якимович
Сергей Якимович
09 января 2023

Найти числа в строке можно таким образом :

import java.util.List;
import java.util.regex.MatchResult;
import java.util.regex.Pattern;
import java.util.stream.Collectors;

public class App {
    public static void main(String[] args) {
        String str = "9 jan 2023, temperature -18";

        List<Integer> numbers = Pattern.compile("-?\\d+")
                .matcher(str)
                .results()
                .map(MatchResult::group)
                .map(x -> Integer.parseInt(x))
                .collect(Collectors.toList());

        System.out.print(numbers); // => [9, 2023, -18]
    }
}
1 0