【问题标题】:How many times "-" at beginning of string (before alphabet letter)字符串开头出现多少次“-”(字母前)
【发布时间】:2014-09-19 12:02:13
【问题描述】:

我不知道- 字符在我的字符串前面出现了多少次。

一些例子:

$string = "-Lorem Ipsum";   // 1
$string = "--Lorem Ipsum";  // 2
$string = "---Lorem Ipsum"; // 3
$string = "--Lorem-Ipsum";  // 2

但是我怎么才能找到这个呢?我知道您可以搜索字符串中某个字符的出现次数。但我想要字母前的- 字符数。不是所有的序列(见最后一个例子)。

我应该如何处理这个问题?

【问题讨论】:

    标签: php string count substr find-occurrences


    【解决方案1】:

    您可以在这里使用老式的将字符串用作数组的技巧:

    $search="-";
    $i=0;
    while($string[$i]==$search)
    {
        $i++;
    }
    echo "Found $i instances at the start of the string.";
    

    【讨论】:

      【解决方案2】:

      如何使用ltrim()strlen()

      echo strlen($string) - strlen(ltrim($string, "-"));
      

      example at eval.in

      【讨论】:

        【解决方案3】:

        它也可以工作 -

        preg_match('/(?!-)/', $string, $match, PREG_OFFSET_CAPTURE);
        

        $match - 除了- 之外的任何字符的位置,这确实是- 的计数。

        【讨论】:

          猜你喜欢
          • 2021-11-30
          • 1970-01-01
          • 2014-03-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-10-08
          • 2017-01-04
          相关资源
          最近更新 更多