Как извлечь числа из строки и получить массив целых?

С помощью JQuery вы можете сделать:

$('input:submit').click( function() { this.disabled = true } );

& amp;

   $('input:submit').keypress( function(e) {
     if (e.which == 13) {
        this.disabled = true 
     } 
    }
   );
102
задан Luiggi Mendoza 26 May 2015 в 12:57
поделиться

4 ответа

Pattern p = Pattern.compile("-?\\d+");
Matcher m = p.matcher("There are more than -2 and less than 12 numbers here");
while (m.find()) {
  System.out.println(m.group());
}

... выводит -2 и 12 .


-? соответствует ведущему отрицательному знаку - необязательно. \ d соответствует цифре, и нам нужно записать \ как \\ в строке Java. Итак, \ d + соответствует 1 или более цифрам.

165
ответ дан 24 November 2019 в 04:28
поделиться
public static String extractNumberFromString(String number) {
    String num = number.replaceAll("[^0-9]+", " ");
    return num.replaceAll(" ", "");
}

извлечения только числа от строки

0
ответ дан 24 November 2019 в 04:28
поделиться
Pattern p = Pattern.compile("[0-9]+");
Matcher m = p.matcher(myString);
while (m.find()) {
    int n = Integer.parseInt(m.group());
    // append n to list
}
// convert list to array, etc

Фактически вы можете заменить [0-9] на \ d, но это требует экранирования двойной обратной косой черты, что затрудняет чтение.

18
ответ дан 24 November 2019 в 04:28
поделиться

для рациональных чисел используйте это: (([0-9 ] +. [0-9] *) | ([0-9] *. [0-9] +) | ([0-9] +))

4
ответ дан 24 November 2019 в 04:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: