вы можете использовать [^\\w\\s]
\\s*[^\\w\\s]\\s*
: \\s*
означают одно или больше пространства
[^\\w\\s]
: ^
не улавливают \\w
и \\s
\\w
означают a-zA-Z0-9_
\\s
означают пространство
String s="Hello there, How are you? Fine!! @xyz";
System.out.println(s.replaceAll("\\s*[^\\w\\s]\\s*", " myWord "));
Выход:
Hello there myWord How are you myWord Fine myWord myWord myWord xyz
Чтобы избежать какой-либо другой специальный символ, который не должен быть заменен, то просто добавьте их в этот []
например \\s*[^\\w\\s:;\\[\\]]\\s*
, как указано на @ brso05
Demo
const regex = /\s*[^\w\s\]\[;]\s*/g;
const str = `Hello there, How are you? Fine!! ; @xyz []`;
const subst = ` myWord `;
const result = str.replace(regex, subst);
console.log(result);
Вы имеете в виду всех вхождений символов в фигурных Скобки или фигурные скобки также являются символами, которые вы хотите заменить? –
Я хочу удалить фигурные скобки тоже ... –
Спасибо за ответы –