2015-06-03 20 views
0

Мне нужно проверить, что моя строка ввода содержит только буквенные символы, звездочки, пробелы и вкладки.Убедитесь, что вход содержит только определенные символы.

Я попытался это, но он не работает:

firstStr.matches(".*[a-zA-Z].*.*[\\t].*.*[\\s].*") 
+0

Читайте о символьном классе в регулярных выражениях дока – anubhava

+0

Эй @Nick Может быть, вы могли бы привести несколько примеров 'firstStr' и что вы ожидаете, что результаты будут –

+0

использовать регулярное выражение отладчик онлайн, чтобы помочь вам –

ответ

2

Используйте это регулярное выражение для проверки, если строка содержит только буквы, пробелы, звездочки, закладки:

firstStr.matches("[a-zA-Z *\t]+") 

Вы были близки, но вам нужен был один класс.

+0

@ Zerges Это сработало. большое спасибо! – Nick

0

Я считаю, что это должно работать:

[\\*\\t\\sa-zA-Z]+ //if you want to ensure that there is atleast 1 character in the string 

[\\*\\t\\sa-zA-Z]* //if it is ok to have 0 or more characters in the string 

\\* will match an asterisk 
\\t will match tab 
\\s will match whitespace 
a-zA-Z will match alphabetical chars 
[...]+ ensures there are atleast one of the expression in the brackets 
[...]* means there is 0 or more of the expression in the brackets 
+0

Спасибо за помощь. – Nick

+0

Если это сработало для вас, пожалуйста, примите/повысьте, чтобы другие могли видеть также – GregH

Смежные вопросы