# #google-bigquery
Вопрос:
У меня есть строка 'attributes.inquiry_result[{name: tran type}]'
, я хочу разделить ее таким образом, чтобы она возвращала массив ['attributes', 'inquiry_result', '{name: tran type}']
.
Я пробовал с 'attributes.inquiry_result[{name: tran type}]'.split(/[([^[]]*)]/);
, но он не разбивается на точки, возвращает ['attributes.inquiry_result', '{name: tran type}']
Попытался добавить логику для точки, но это привело к чему-то другому.
Пожалуйста, помогите.
Комментарии:
1. Не могли бы вы предоставить свой текущий код?
2. Привет @Янник, это текущий код. но хочу разделить на точки, а также скобки. ‘атрибуты.запрос_результата[{имя: тип трана}]’.разделить(/[([^[]]*)]/);
3.
"attributes.inquiry_result[{name: tran type}]".replace("]", "").split(/.|[/g)
должно работать для точного заданного ввода.4. Спасибо. Это сработало, как и ожидалось. 🙂
Ответ №1:
Вы можете использовать функцию разделения с регулярным выражением. Фильтр используется для удаления последнего пустого значения, так как ваша строка заканчивается символом»]».
const string = 'attributes.inquiry_result[{name: tran type}]'; const result = string.split(/.|]|[/).filter(item =gt; item); console.log(result);