В связи с переходом на новый движок... возможны сбои в работе! Простите!
Работы производятся прямо сейчас 25-02-2024! 🞨
Меню :
php (328)



Blog (1385)
php (328)
js (243)
html (147)
css (131)
html tags (62)
js tag (56)
jquery (42)
text (37)
js method (36)
js date (33)
php array (33)
form html (30)
online (29)
fonts (26)
Показать еще :
link (26)
ruweb.net (25)
foto (22)
atom (20)
php file (20)
forum (19)
svg (18)
hosting (18)
input (18)
php date (17)
board (16)
html book (16)
php time (16)
color (15)
js url (14)
js events (14)
img (14)
info (14)
js time (14)
notepad (13)
select (13)
htaccess (13)
osclass (13)
dw block (12)
php path (12)
keyboard (12)
знак (12)
php img (12)
download (12)
table (12)
form (11)
jsphp (11)
icon (11)
mouse (10)
js delete (10)
yandex (10)
keyframes (10)
hover (9)
chart (9)
dosite (8)
browser (8)
cookie (7)
php url (7)
comment (7)
canvas (6)
list (6)
iframe (6)
adminka (6)
mysql (6)
click (6)
php get (6)
vs code (6)
search (5)
heading (5)
mb (5)
reg.ru (5)
js math (5)
tag a (5)
year (5)
ftp (5)
js id (5)
value (5)
xml (4)
base64 (4)
bbcode (4)
scandir (4)
нок (4)
js form (4)
day (4)
ssl (4)
php var (4)
week (4)
flags (4)
task (4)
month (4)
vk (4)
submit (4)
console (4)
pages (4)
symbols (4)
games (4)
js hash (3)
line (3)
domen (3)
js post (3)
https (3)
captcha (3)
money (3)
куб (3)
ucoz (3)
numbers (3)
js img (3)
padding (3)
tag hr (2)
sitemap (2)
google (2)
рся (2)
prompt (2)
details (2)
counter (2)
height (2)
qr kod (2)
typeof (2)
arrows (2)
js vars (2)
youtube (2)
video (2)
seo (2)
header (1)
windows (1)
speed (1)
cursor (1)
нод (1)
jino (1)
smile (1)
archive (1)
rutube (1)
scroll (1)

Как разделить текст/строку на отдельные символы примеры str_split + preg_split

Как разделить текст посимвольно в php!? Способы разбиения : str_split + preg_split. Нам потребовалось разбить строку на символы. Способы разбиения строки в символы. Давайте разберем несколько примеров и способов и несколько кодировок – они иногда играют неприятную роль в разбитии строки на элементы.

Данная тема может рассматриваться как две темы, разбить текст посимвольно, т.е. один знак - один символ, либо разбить текст по символу, по какому-то по определенному символу, который заранее определен... вам -> сюда

Все способы разбить текст на символы примеры

  1. Разбить текст с помощью str_split
  2. Разбить текст на кириллице с помощью str_split -> utf - 8
  3. Разбить текст с помощью preg_split
  4. Разбить текст на кириллице с помощью preg_split -> utf - 8
  5. Скачать

  1. Разбить текст с помощью str_split

    Как просто разбить текст на символы!? Если ваш текст - один знак и var_dump покажет число 1, то эта функция будет у вас работать!

    Например буква R латинского алфавита в кодировке покажет через var_dump("R"):

    string(1) "R"

    Как разбить английский текст в массив с помощью str_split

    Для того, чтобы показать работу функции str_split с текстом на английском языке, нам понадобится какая-то переменная с английский текстом внутри:

    $text = "Hello world";

    Применим функцию str_split с английскому тексту:

    $text_array = str_split($text);

    Результат разделения английского текста на символы

    Как видим, наш текст на английском языке прекрасно разбился на символы и выводится как массив через print_r

    Array

    (

    [0] => H

    [1] => e

    [2] => l

    [3] => l

    [4] => o

    [5] =>

    [6] => w

    [7] => o

    [8] => r

    [9] => l

    [10] => d

    )

    Если у вас windows-1251, то и для кириллицы этот способ вполне рабочий!


  2. Разбить текст на кириллице с помощью str_split -> utf - 8

    Как разбить/разделить текст на кириллице с помощью str_split, нам нужно проверить таким же образом, какой результаты будет выводить var_dump

    Например буква P русского алфавита в кодировке UTF-8 покажет через var_dump({P}):

    string(2) "Р"

    Как вы поняли...str_split для кириллицы в UTF-8 по умолчанию не подойдет! Нам нужно... преобразовать строку из UTF-8 в windows-125 :

    iconv("UTF-8", "windows-1251", $text)

    Если мы выведем здесь вот такой вариант разделения текста на символы:

    $text="Это просто текст";

    print_r(iconv("UTF-8", "windows-1251", $text));

    То получим:

    Array

    (

    [0] =>

    [1] =>

    [2] =>

    [3] =>

    [4] =>

    [5] =>

    [6] =>

    [7] =>

    [8] =>

    [9] =>

    [10] =>

    [11] =>

    [12] =>

    [13] =>

    [14] =>

    [15] =>

    )

    Как можно такой результат понять!? Вот так будет отображаться текст, кодировку которого не переваривает кодировка страницы... Мы немного писали о кодировке -> здесь
    Что делать!?

    Нам нужно каждую букву обратно перекодировать в UTF-8, это можно сделать в цикле:

    $text="Это просто текст";

    $str = iconv("UTF-8", "windows-1251", $text);

    foreach (str_split($str) as $index => $value)

    {

    $переменная .= iconv("windows-1251","UTF-8", $value)."<br>\n";

    }

    echo $переменная;

    Результат:

    Э

    т

    о

    п

    р

    о

    с

    т

    о

    т

    е

    к

    с

    т


  3. Разбить текст с помощью preg_split

    Еще один вариант разбиения строки посимвольно, который я теперь использую:

    preg_split - Разбивает строку по регулярному выражению

    Описание:

    pattern - отсутствует, поэтому "//"

    u - используется кодировка UTF-8

    Специальное значение limit, равное -1, подразумевает отсутствие ограничения

    PREG_SPLIT_NO_EMPTY - если этот флаг указан, функция preg_split() вернет только непустые подстроки.

    Возвращает массив символов.

    Как разбить английский текст на символы с помощью preg_split

    С теория разобрались, теперь пришло время примеров! У нас есть текст на английском языке, пропустим его через функцию preg_split и посмотрим, что получится:

    $text5 ="Hello world";

    print_r(preg_split("//u", $text5 , -1, PREG_SPLIT_NO_EMPTY) ) ;

    Пример разделения строки на английском языке на символы

    Как видим на нашем примере, текст/строка на английском языке прекрасно разбита на символы с помощью preg_split

    Array

    (

    [0] => H

    [1] => e

    [2] => l

    [3] => l

    [4] => o

    [5] =>

    [6] => w

    [7] => o

    [8] => r

    [9] => l

    [10] => d

    )


  4. Разбить текст на кириллице с помощью preg_split -> utf - 8

    Все тоже самое проделаем с текстом на кирилице! Опять возьмем функцию preg_split и пропустим через неё уже текст на русском языке:

    $text="Это просто текст";

    print_r(preg_split("//u", $text , -1, PREG_SPLIT_NO_EMPTY) ) ;

    Пример разделения строки на русском языке на символы

    В данном примере мы видим, что строка - текст прекрасно были разобраны на символы:

    Array

    (

    [0] => Э

    [1] => т

    [2] => о

    [3] =>

    [4] => п

    [5] => р

    [6] => о

    [7] => с

    [8] => т

    [9] => о

    [10] =>

    [11] => т

    [12] => е

    [13] => к

    [14] => с

    [15] => т

    )

Не стесняемся говорить спасибо!
Ещё : dwweb.ru есть здесь:
ruweb
Все статьи авторские, при копироавании активная ссылка обязательна DwWeb.ru! © 2015 - 2024 Контакты. Реклама на сайте Лучший хостинг : RUWEB + помощь по RUWEB
Страница загружена за : 0.019342 секунд. Подробнее