如何找出字符串中的第二个字符是否为php中的空格

时间:2018-07-26 18:06:03

标签: php

我试图找出字符串中的第二个字符是否为空格。所以,如果我有这个:

"a brown fox"

"hello world"

如何标记第一个字符串在第二个位置有空格,但是第二个字符串没有第二个空格?

1 个答案:

答案 0 :(得分:1)

例如,我可以想到多种方法

Accessing string as an array

if($string[1] == " ") {
    //$string's 2nd character is a space
}

[1]捕获字符串的第二个字母,因为它充当数组,并且数组以键0开头。

如果您收到错误消息,指出字符串不是数组或无效索引等,那么您可能需要将字符串拆分为数组才能使第一个字符串起作用。

if(str_split($string)[1] == " ") {
    //$string's 2nd character is a space
}

使用substr()

类似于第一个示例,您还可以使用substr()

if(substr($string, 1, 1) == " ") {
    //$string's 2nd character is a space
}

使用strpos()

再次类似,您可以使用strpos()

if(strpos("a brown fox", " ") == 1) {
    //$string's 2nd character is a space
}

使用preg_match()

如果愿意,也可以使用正则表达式

if (preg_match('/^. /', $string)) {
    //$string's 2nd character is a space
}

模式细分:

  • ^在行的开头断言位置
  • .匹配任何字符(行终止符除外)
  • 从字面上匹配字符

使用explode()

另一种(虽然不那么简单)的方法是使用explode()在空格处打断字符串,然后计算字符串在第一个空格之前的时间。

$string_parts = explode(" ", $string);
if(strlen($string_parts[0]) <= 1) {
    //$string's 2nd character is a space
}

如果您已经计划将字符串分成多个部分,这将很有用。