Jak napisać wzór dla metody skanera, takiej jak:
scan.findInLine(pattern);
To znajdzie dla mnie pierwszą instancję dowolnej liczby (czyli dowolnej liczby 0-10000) w tej linii. Potrzebuję tego, aby wyszukać ten numer, aby utworzyć tablicę o tym rozmiarze.
Nie jestem pewien, czy to wymaga wyrażenia regularnego, ale jeśli tak, proszę, możesz wyjaśnić to po prostu mi, ponieważ jestem bardzo nowy w tym pomyśle.
Bardzo przydatne byłyby przykłady niektórych wzorców i wyjaśnienie tego, czego szukają.
Odpowiedzi:
1 dla odpowiedzi № 1Wyrażenie regularne (10000|d{1,4})
znajdzie numer, którego szukasz, w zasadzie sprowadza się do 10000 lub 0-9999
scan.findInLine("(10000|\d{1,4})");
2 dla odpowiedzi nr 2
To prosta próbka:
Scanner scan = new Scanner("ab0252c4d67");
String i = scan.findInLine("\d+");
System.out.println(Integer.parseInt(i));
co daje ci pierwszą liczbę w tej linii. d wyszukuje liczby, a + wskazuje 1 lub więcej wystąpień liczb.