webentwicklung-frage-antwort-db.com.de

PHP - Erkennen Sie Leerzeichen zwischen Zeichenfolgen

Wie gehe ich vor, um Whitespace innerhalb einer Zeichenfolge zu erkennen? Zum Beispiel habe ich eine Namenszeichenfolge wie:

"Jane Doe"

Denken Sie daran, dass ich sie nicht zuschneiden oder ersetzen möchte. Sie müssen nur feststellen, ob zwischen der ersten und der zweiten Zeichenfolge Leerzeichen vorhanden sind.

29

Verwenden Sie preg_match wie von Josh vorgeschlagen:

<?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));

Ouputs:

int(1)
int(0)
int(1)
77
hobodave

Würde preg_match ("/\s /", $ string) nicht funktionieren? Der Vorteil gegenüber strpos besteht darin, dass Leerzeichen und nicht nur Leerzeichen erkannt werden.

8
Josh

Sie können nur nach alphanumerischen Zeichen suchen, die Leerzeichen nicht. Sie können auch ein Strpos für ein Leerzeichen erstellen.

if(strpos($string, " ") !== false)
{
   // error
}
8
Tyler Carter

Sie können so etwas verwenden:

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

Dadurch wird ein Leerzeichen erkannt, jedoch keine andere Art von Leerzeichen.

5
gurjeet kj

http://no.php.net/strpos

<?php
if(strpos('Jane Doe', ' ') > 0)
    echo 'Including space';
else
    echo 'Without space';
?>
0
ThoKra
// returns no. of matches if $str has nothing but alphabets,digits and spaces.
function is_alnumspace($str){
  return preg_match('/^[a-z0-9 ]+$/i',$str);
}
0
Rachel
// returns no. of matches if $str has nothing but alphabets,digits and spaces. function 

    is_alnumspace($str) {
          return preg_match('/^[A-Za-z0-9 ]+$/i',$str);
    }

// This variation allows uppercase and lowercase letters.