Więc jestem zupełnie nowe do wyrażeń regularnych, i staram się używać java.util.regex Java, aby znaleźć się w ciągach znaków interpunkcyjnych. Nie wiem, jaki rodzaj interpunkcji mogę uzyskać przed czasem, z wyjątkiem tego, że (1)!,?,., ... są wszystkie prawidłowe przebicia i (2) "<" i ">" oznaczają coś specjalnego, i nie liczą się jako interpunkcja. Sam program tworzy frazę pseudolosowo i chcę usunąć interpunkcję na końcu zdania, zanim przejdzie proces losowy.Wyrażenia regularne na interpunkcji
mogę dopasować całe słowa z dowolnego interpunkcji, ale dopasowujący po prostu daje mi indeksów dla tego słowa. Innymi słowy:
Pattern p = Pattern.compile("(.*\\!)*?");
Matcher m = p.matcher([some input string]);
będzie przechwytywać dowolne słowa z "!" na końcu. Na przykład: - "! Day"
String inputString = "It is a warm Summer day!";
Pattern p = Pattern.compile("(.*\\!)*?");
Matcher m = p.matcher(inputString);
String match = inputString.substring(m.start(), m.end());
wyników w meczu> String ~
Ale chcę mieć indeks Matcher tylko „!”, Więc mogę tylko podzielić ją wyłączyć.
Prawdopodobnie mógłbym tworzyć przypadki i używać String String (...) dla każdego rodzaju interpunkcji, które mógłbym dostać, ale mam nadzieję, że jest jakiś błąd w używaniu wyrażeń regularnych, aby to zrobić.
Oh! O Boże, nawet tego nie zauważyłem. Nie, wcale nie było to celowe - dziękuję za to! –