Я пытаюсь написать регулярное выражение в Java, чтобы избавиться от всех знаков препинания заголовка и хвоста, кроме "-"
в строке, однако при этом пунктуация внутри слов не изменилась.
Я пытался заменить знаки препинания на ""
, String regex = "[\\p{Punct}+&&[^-]]";
прямо сейчас, но это также удалит пунктуацию внутри слова.
Я также пытался сопоставить шаблон: String regex = "[(\\w+\\p{Punct}+\\w+)]";
и Matcher.maches()
, чтобы сопоставить группу, но это дает мне ноль для ввода String word = "#(*&wor(&d#)("
Мне интересно, как правильно в этом случае работать с сопоставлением групп Regex
Примеры: * 1 021 *
Input: @)($&word@)($& Output: word
Input: @)($)word@google.com#)(*$&$ Output: word@google.com