Проверка строки содержит пробелы вместе с некоторой другой последовательностью символов с использованием регулярных выражений в Java - PullRequest
0 голосов
/ 18 февраля 2012

я использую выражение регулярного выражения, чтобы проверить, содержит ли строка пробел.мое регулярное выражение: ^\\s+$

например, если моя строка my name, то совпадения с регулярным выражением должны возвращать true.но он возвращает true, только если моя строка содержит только пробелы, а не другие символы.

Как проверить, содержит ли строка символы пробела или табуляции или символы возврата каретки между / началом / концом какой-либо строки.

Ответы [ 3 ]

5 голосов
/ 18 февраля 2012

^(.*\s+.*)+$, кажется, работает для меня. Принимает что угодно, если в строке есть хотя бы один пробел. Это будет соответствовать всей строке.

Если вы хотите проверить наличие пробела, вы можете просто использовать \s без каких-либо начальных или конечных маркеров в строке. Разница в том, что это будет соответствовать только отдельным пробелам.

2 голосов
/ 18 февраля 2012

Ваше регулярное выражение неверно.

  1. Это строка, представляющая регулярное выражение.(как правильно указал tchrist)
  2. Соответствующий шаблон, полученный с помощью Pattern.compile (), соответствует только строкам, содержащим только один или несколько пробельных символов, начиная с начала и до конца.Таким образом, совпадающая строка состоит только из пробельных символов.

Попробуйте эту строку, введенную для Pattern.compile ():

"\\s+"

Разница в том, что без якорей "^" и "$ "могут быть другие символы вокруг символа пробела.Символ пробела может быть везде в строке.

При использовании этой строки шаблона символы пробела должны находиться в начале:

"^\\s+"

И здесь последовательностьПробельные символы должны быть в конце:

"\\s+$"
0 голосов
/ 18 февраля 2012

Используйте org.apache.commons.lang.StringUtils.containsAny (). Смотри http://commons.apache.org/lang/api-3.1/org/apache/commons/lang3/StringUtils.html.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...