2015-11-20 3 views
-1

Если я хочу, чтобы имя содержало только буквы, цифры, тире и символы подчеркивания, любые другие символы должны быть заменены символом подчеркивания. Как я могу это сделать с регулярным выражением?Регулярное выражение для замены специальных символов с подчеркиванием

+0

'Строка # replaceAll ("[^ A-Za-Z0-9-_]", "_")' –

ответ

0

Я думаю, что это то, что вы хотите

String dirtyString = "This*is#a*-very_dirty&String"; 
System.out.print(dirtyString.replaceAll("[^a-zA-Z0-9-_ ]","_")); // Replace all with "_" 
                   // except a-z, A-Z, 0-9, 
                   // '-', '_' and space. 

// System prints This_is_a_-very_dirty_String