Ответ 1
Зачем использовать регулярное выражение?
name.contains(" ")
Это должно работать так же хорошо, и быть быстрее.
У меня есть диалоговое окно ввода, которое запрашивает имя элемента XML, и я хочу проверить его, есть ли у него пробелы.
Можно ли сделать что-то вроде name.matches()?
Зачем использовать регулярное выражение?
name.contains(" ")
Это должно работать так же хорошо, и быть быстрее.
string name = "Paul Creasey";
if (name.contains(" ")) {
}
Если вы будете использовать Regex, у него уже есть предопределенный класс символов "\ S" для любого символа без пробелов.
!str.matches("\\S+")
говорит вам, является ли это строкой хотя бы одного символа, где все символы не являются пробелами
Если вы действительно хотите регулярное выражение, вы можете использовать его:
str.matches(".*([ \t]).*")
В том смысле, что все, что соответствует этому регулярному выражению, не является допустимым именем тега xml:
if(str.matches(".*([ \t]).*"))
print "the input string is not valid"
if (str.indexOf(' ') >= 0)
будет (немного) быстрее.