PHP - 检测字符串之间的空格

32 php regex whitespace

我如何检测字符串中的空格?例如,我有一个名称字符串,如:

"简·多伊"

请记住,我不想修剪或替换它,只检测第一个和第二个字符串之间是否存在空格.

hob*_*ave 79

使用Josh建议的preg_match:

<?php

$foo = "Dave Smith";
$bar = "SamSpade";
$baz = "Dave\t\t\tSmith";

var_dump(preg_match('/\s/',$foo));
var_dump(preg_match('/\s/',$bar));
var_dump(preg_match('/\s/',$baz));
Run Code Online (Sandbox Code Playgroud)

.OUPUTS:

int(1)
int(0)
int(1)
Run Code Online (Sandbox Code Playgroud)

  • 哈!我建议你,你得到了投票:-)你是第一个提供一个真实的例子...... (3认同)

Tyl*_*ter 8

您只能检查字母数字字符,而空格不是.你也可以为空间做一个strpos.

if(strpos($string, " ") !== false)
{
   // error
}
Run Code Online (Sandbox Code Playgroud)

  • 你想要它像strpos($ string,"").首先是干草堆,然后是针 (2认同)

Jos*_*osh 8

不会的preg_match( "/\s /",$弦)工作?strpos的优势在于它可以检测到任何空格,而不仅仅是空格.


小智 5

你可以使用这样的东西:

if (strpos($r, ' ') > 0) {
    echo 'A white space exists between the string';
}
else
{
    echo 'There is no white space in the string';
}
Run Code Online (Sandbox Code Playgroud)

这将检测空间,但不会检测任何其他类型的空白.