Nano Hash - криптовалюты, майнинг, программирование

разобрать строку в javascript по общему разделителю

В javascript у меня есть строка вида «/john/smith». Я хотел бы получить массив «имя»: «джон», «фамилия»: «кузнец».

Есть ли в js простая функция для анализа этой строки на основе разделителя? Я ничего не видел, и Google ничего не вернул, кроме регулярного выражения.


Ответы:


1
var str="/john/smith"
var ar=str.split("/");

теперь ar[1] будет содержать имя

& ar[2] будет содержать фамилию

20.06.2013

2

Что-то вроде этого?:

var str = "/john/smith";

//empty is here because if you split by / you'll get ["", "john", "smith"]
var getObject = function(empty, first, last) {
    //You could traverse arguments, witch will have every match in an "array"
    return {
       first_name: first,
       last_name: last
    };
}

firstAndLastName = getObject.apply(null, str.split('/')); //Object {first_name: "john", last_name: "smith"}
20.06.2013

3

Для этого вы можете использовать метод .split(). Справку по .split() см. в MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split

Его очень просто использовать.

var namestring = "/John/Smith";
var pieces = namestring.split("/");

piece[1] содержит «Джон», а piece[2] содержит «Смит». Обратите внимание, что эти индексные массивы равны 1 и 2, а не 0 и 1. piece[0] содержит "", потому что split() возвращает строки, разделенные заданным разделителем. Перед первым символом «/» стоит пустая строка, поэтому первый результат пуст.

20.06.2013

4

Метод split() поможет

var str="/john/smith"
var arr=str.split("/");

arr[1] даст forstname и arr[2] даст secondname

20.06.2013

5

Простой метод Javascript split должен работать.

var myOriginalString = '/John/Smith';
var afterSplitArray = myOriginalString.split('/');
var firstName = afterSplitArray[1]; // John
var lastName = afterSplitArray[2]; //Smith

Единственная загвоздка в том, что если ваша исходная строка начинается с разделителя, вы должны начать доступ к переменным с индекса = 1, как в приведенном выше примере.

20.06.2013

6

Несколько способов сделать это для вашего конкретного примера, учитывая, что большинство других ответов оставят / в начале, они выведут правильный результат:

var result = str.match(/[^/]+/g);

Or:

var result = str.split('/').slice(1);
20.06.2013
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..