Строка включает в себя набор объектов, как получить объект

#reactjs

Вопрос:

 string="hello coimbatore @{name:Abilene,locality:Abilene,TX,USA} hello coimbatore @{name:Abilene,locality:Abilene,TX,USA}"


value=[{name:Abilene,locality:Abilene,TX,USA},{name:Abilene,locality:Abilene,TX,USA}] 
 

Получить его сейчас, как получить ?

Комментарии:

1. Пожалуйста, поделитесь кодом, который вы пробовали.

2. @Gowri ты проверил мой ответ?

3. @Apostolos ваши ответы хороши

4. пусть строка = «привет, коимбатур мадурай» Абзац представляет собой серию связанных предложений, развивающих центральную идею, называемую темой. Попробуйте подумать о абзацах с точки зрения тематического единства: абзац-это предложение или @{имя:Абилин,местность:Абилин,Техас,США} коимбатур ченнаи @{имя:Абилин,местность:Абилин,Техас,США}Абзац-это серия связанных предложений, развивающих центральную идею,называемую темой.@{имя:Абилин,местность:Абилин,Техас, США} Попробуйте подумать о абзацах с точки зрения тематического единства: абзац-это предложение или »

5. как получить объект @Apostolos

Ответ №1:

Это сложно, так как строка не указывает на допустимый объект json, но с небольшим количеством «грязного» кода вы можете этого добиться. Сначала вы разделяете строку, а затем используете splice, чтобы избавиться от первой пустой записи внутри разделенного массива.

Затем, поскольку json не может анализировать строки, вам нужно вставить двойные кавычки, чтобы JSON мог рассматривать его как допустимый объект json и успешно анализировать его.

 let string = "hello coimbatore @{name:Abilene,locality:Abilene,TX,USA} hello coimbatore @{name:Abilene,locality:Abilene,TX,USA}"
let arr1 = string.split('hello coimbatore @')
arr1 = arr1.splice(1, string.length)
let arr2 = arr1.map(t => t = JSON.parse(t.replaceAll('{', '{"').replaceAll(',locality', '","locality').replaceAll(':', '":"').replaceAll('}', '"}')))
console.log(arr2)