Как использовать функцию php preg_match () для проверки строки, чтобы увидеть, существуют ли какие-либо пробелы?
пример
«это предложение будет проверено верно для пробелов»
"ThisOneWouldTestFalse"
Если вас интересует любое свободное пространство (включая вкладки и т. Д.), Используйте \s
if (preg_match("/\\s/", $myString)) { // there are spaces }
если вас просто интересуют пробелы, вам даже не нужно регулярное выражение:
if (strpos($myString, " ") !== false)
Также см. Этот вопрос StackOverflow, который обращается к этому вопросу .
И, в зависимости от того, хотите ли вы обнаружить вкладки и другие типы пробелов, вы можете посмотреть на синтаксис регулярных выражений perl для таких вещей, как \ b \ w и [: SPACE:]
[\\S]
верхний регистр – «S», безусловно, будет работать.
Как насчет использования ctype_graph для этой цели? Это расширит область пространства, чтобы обозначить любой «символ белого пробела», который не печатает ничего видимого на экране (например, \ t, \ n). Однако это является родным и должно быть быстрее, чем preg_match.
$x = "string\twith\tspaces" ; if(ctype_graph($x)) echo "\n string has no white spaces" ; else echo "\n string has spaces" ;
Вы можете использовать:
preg_match('/[\s]+/',.....)
быстрее использовать:
strstr($string, ' ');