Разбить строку по пробелам

Содержание

Описание проблемы

Как разбить строку на слова и символы?

Решение 1: разделить строку по разделителю

Следующий пример показывает как разделить строку в Java по разделителю с помощью метода split() и вывести подстроку.

Результат

Получим следующий результат:

Решение 2: разбить строку на слова

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

Результат

Получим следующий результат:

Решение 3: разбить строку на символы в массив

Следующий пример показывает как разбить строку на массив по символу. Для этого просто преобразуем строку в массив с помощью метода toCharArray().

(PHP 4, PHP 5, PHP 7)

explode — Разбивает строку с помощью разделителя

Описание

Возвращает массив строк, полученных разбиением строки string с использованием delimiter в качестве разделителя.

Список параметров

Если аргумент limit является положительным, возвращаемый массив будет содержать максимум limit элементов, при этом последний элемент будет содержать остаток строки string .

Если параметр limit отрицателен, то будут возвращены все компоненты кроме последних — limit .

Если limit равен нулю, то он расценивается как 1.

По историческим причинам, функции implode() можно передавать аргументы в любом порядке, но для explode() это недопустимо. Убедитесь в том, что delimiter указан перед аргументом string .

Возвращаемые значения

Возвращает массив ( array ) строк ( string ), созданный делением параметра string по границам, указанным параметром delimiter .

Читайте также  Самый лучший квадрокоптер в мире

Если delimiter является пустой строкой (""), explode() возвращает FALSE . Если delimiter не содержится в string , и используется отрицательный limit , то будет возвращен пустой массив ( array ), иначе будет возвращен массив, содержащий string .

Список изменений

Версия Описание
5.1.0 Добавлена поддержка отрицательных значений limit

Примеры

Пример #1 Пример использования explode()

// Пример 1
$pizza = "кусок1 кусок2 кусок3 кусок4 кусок5 кусок6" ;
$pieces = explode ( " " , $pizza );
echo $pieces [ 0 ]; // кусок1
echo $pieces [ 1 ]; // кусок2

// Пример 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh" ;
list( $user , $pass , $uid , $gid , $gecos , $home , $shell ) = explode ( ":" , $data );
echo $user ; // foo
echo $pass ; // *

Пример #2 Пример возвращаемого значения explode()

/*
Строка, которая не содержит разделителя, будет
просто возвращать массив с одним значением оригинальной строки.
*/
$input1 = "hello" ;
$input2 = "hello,there" ;
var_dump ( explode ( ‘,’ , $input1 ) );
var_dump ( explode ( ‘,’ , $input2 ) );

Результат выполнения данного примера:

Пример #3 Примеры с использованием параметра limit

// положительный лимит
print_r ( explode ( ‘|’ , $str , 2 ));

// отрицательный лимит (начиная с PHP 5.1)
print_r ( explode ( ‘|’ , $str , — 1 ));
?>

Результат выполнения данного примера:

Примечания

Замечание: Эта функция безопасна для обработки данных в двоичной форме.

Смотрите также

  • preg_split() — Разбивает строку по регулярному выражению
  • str_split() — Преобразует строку в массив
  • mb_split() — Разделение строк в многобайтных кодировках, используя регулярное выражение
  • str_word_count() — Возвращает информацию о словах, входящих в строку
  • strtok() — Разбивает строку на токены
  • implode() — Объединяет элементы массива в строку

Portal despre sfera tehnologiilor informaționale

[.NET] C# Разделить строку на слова

  • Solicitați un link
  • Facebook
  • Twitter
  • Pinterest
  • E-mail
  • Alte aplicații

Здравствуйте уважаемые программисты. Сегодня мы будем обсудить как разделить строку на слова.

Читайте также  Руслит открыть в обход блокировки

Допустим у нас есть строка: "This is a test string" и нам нужно получить слова из этой строки. Посмотрев на нашу строку то у нас возникает идея что надо как-то символ пробела (Space) сделать разделителем и все полученные слова поместить в какой нибудь массив. Для разделения строк на слова нам поможет замечательная функция Split.

String.Split это метод позволяющий разделить строку на подстроки с помощью разделителя. Синтаксис метода таков:

Давайте рассмотрим небольшой пример разделения строк на слова:
Думаю тут все понятно:

  1. Задаем константу с текстом.
    Примечание: Можете использовать и переменную если вы хотите ввести текст с клавиатуры и получить его с помощью конструкций Console.ReadLine()
  2. Разделяем строку на подстроки и помещаем их в строковой массив. Separator или разделитель у нас пробел
  3. Из массива берется каждый элемент и выводится на экран.

Думаю вам было все понято, но бывают ситуации когда нам нужно получить слова из строки но строка у нас имеет такой вид: "Основные слова: дружба, любовь , счастье?!" ? Здесь присутствует символ пробела, двоеточие, запятая, вопросительный и восклицательный знак. Избавится от них можно вместо чтобы передавать только один знак(т.е. знак пробела) в качестве разделителя мы передадим массив символов:

Здесь вы скажете что все, проблема решена, но хочу вас огорчить так как если вы поставите Breakpoint(точка останова) на этот код то вы заметите что массив имеет не только слова но и пустые элементы:

[0] "Основные"
[1] "слова"
[2] ""
[3] "дружба"
[4] ""
[5] "любовь"
[6] ""
[7] ""
[8] "счастье"
[9] ""
[10] ""

Это произошло потому что между разделителями нет ни одного строчного символа. Избавится от пустых элементов массива легко, надо лишь добавить к методу String.Split перечисление StringSplitOptions.RemoveEmptyEntries. Это исключит из массива пустые элементы без всяких заморочек 🙂

Читайте также  Самые мощные аккумуляторы 18650

Итак полный работоспособный код будет выглядеть так:

Ссылка на основную публикацию
Adblock
detector