У меня возникают проблемы, зная, сколько раз -
персонаж находится в фронт моей строки.
Некоторые примеры:
$string = "-Lorem Ipsum"; // 1
$string = "--Lorem Ipsum"; // 2
$string = "---Lorem Ipsum"; // 3
$string = "--Lorem-Ipsum"; // 2
Но как я могу найти это? Я знаю, что вы можете искать количество вхождений символа в строке. Но я хочу количество -
символы перед буквой алфавита. Не все последовательности (см. Последний пример).
Как мне подойти к этому?
Вы можете использовать хитрость старой школы использования строки в качестве массива здесь как таковой:
$search="-";
$i=0;
while($string[$i]==$search)
{
$i++;
}
echo "Found $i instances at the start of the string.";
Как насчет использования ltrim()
а также strlen()
echo strlen($string) - strlen(ltrim($string, "-"));
Увидеть пример на eval.in
это также будет работать —
preg_match('/(?!-)/', $string, $match, PREG_OFFSET_CAPTURE);
$match
— позиция любого персонажа, кроме -
что на самом деле количество -
,