У меня есть эта строка и / или массив, поступающий из базы данных, и я должен разбить его либо от ^ до запятой, либо от массива, это будет ^ до конца строки. Он будет включать ^, но не будет включать запятую или ", я знаю, что недавно писал о подобной проблеме. Я хотел бы использовать регулярное выражение, но любая помощь будет принята с благодарностью!
"HIGH RISK^widget,1^count,3^dfn,EIGHT,PATIENT^patname,
09/04/2018^reviewdate,ACTIVE^status,HIGH RISK FOR SUICIDE^flag"
["HIGH RISK^widget", "1^count", "3^dfn", "EIGHT", "PATIENT^patname",
"09/04/2018^reviewdate", "ACTIVE^status", "HIGH RISK FOR SUICIDE^flag"]
ОБНОВЛЕНИЕ: Ответ: (\ ^) [\ s \ S] *? (? = "). Извините, что зря потратил время.
Заранее спасибо!
можешь поделиться своими попытками (код)
Привет! это ты опять со своей проблемой длинная-длинная струна?
Да, Кош, это был я. Честно говоря, я потратил 2 дня, пытаясь понять регулярное выражение, и я просто не понимаю его на данный момент. У меня есть только 2 дня, чтобы разобраться с этой проблемой разделения, и у меня просто нет времени.
Вы говорите, что хотите удалить части строки, начиная с ^ и заканчивая " или запятой, но в результирующем массиве нет ни одной подстроки, удаленной после любого из ^?
Привет, CertainPerformance. Так что мы остановимся на одном из вариантов. Внутри массива. Я хотел бы, например, удалить виджет ^ и остановиться прямо перед знаком ". Таким образом, регулярное выражение будет чем-то вроде include ^ и удалить все, пока не появится". Я собираюсь запустить цикл, чтобы поразить остальных.
Я понял. Думаю, мне просто нужно было немного успокоиться и расслабиться, лол. (\ ^) [\ s \ S] *? (? = ") это код регулярного выражения, который я использую для начала и ищу ^, а затем поднимайтесь до тех пор, пока не появится сообщение" Извините, что беспокою всех! "



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Возможно, что-то подобное подойдет вам, хотя вопрос не совсем ясен, я думаю, что это то, что вы ищете.
var test = "HIGH RISK^widget,1^count,3^dfn,EIGHT''test,PATIENT^patname,09/04/2018^reviewdate,ACTIVE^status,HIGH RISK FOR SUICIDE^flag";
var pairs = test.split(',');
console.info(pairs);
var mapped = pairs.map(pair => pair.substring(0, pair.search(/\^|\'\'/) + 1));
console.info(mapped);
Вы сами пробовали?