Для разделения склеенных букв разного регистра на PHP можно использовать следующий подход.
- Исходя из предоставленной строки, необходимо определить, где именно происходит смена регистра. Обычно это происходит при встрече заглавной буквы после одной или нескольких строчных букв.
- Для определения места смены регистра можно использовать цикл, который будет перебирать каждый символ строки с помощью функции
strlen
иsubstr
.
$str = "HelloWorld"; $length = strlen($str); for($i = 0; $i < $length; $i++) { // Проверяем, является ли текущий символ заглавным if(ctype_upper(substr($str, $i, 1))) { // Вставляем пробел перед заглавной буквой $str = substr_replace($str, " ", $i, 0); // Перемещаем индекс на следующую позицию после вставки пробела $i++; } } echo $str;
В результате выполнения данного кода, строка "HelloWorld" будет преобразована в "Hello World".
- Если вы хотите сохранить исходную строку и получить новую строку с разделенными словами, можно использовать переменную для сохранения разделенных слов.
$str = "HelloWorld"; $length = strlen($str); $newStr = ""; for($i = 0; $i < $length; $i++) { // Проверяем, является ли текущий символ заглавным if(ctype_upper(substr($str, $i, 1))) { // Добавляем пробел перед заглавной буквой $newStr .= " "; } // Добавляем текущий символ к новой строке $newStr .= substr($str, $i, 1); } echo $newStr;
Теперь строка "HelloWorld" будет разделена на "Hello World", исходная строка останется нетронутой.
Оба приведенных подхода могут быть использованы для разделения склеенных букв разного регистра в строках на PHP. Вы можете выбрать подход, который наиболее подходит для вашей конкретной ситуации и легко расширяемости.