字符串开头的“ - ”多少次(字母前)

时间:2014-09-19 12:02:14

标签: php string count substr find-occurrences

我无法知道-字符在我的字符串的前面中的次数。

一些例子:

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

但我怎么能找到这个呢?我知道你可以搜索一个字符串中出现的字符数。但我希望字母前面有-个字符的数量。并非所有序列(见最后一个例子)。

我该如何处理?

3 个答案:

答案 0 :(得分:3)

你可以使用旧的学校技巧,在这里使用字符串作为数组:

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

答案 1 :(得分:1)

使用ltrim()strlen()

怎么样?
echo strlen($string) - strlen(ltrim($string, "-"));

请参阅example at eval.in

答案 2 :(得分:0)

它也可以起作用 -

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

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

相关问题