@wollk

Как разбить строку по запятой?

Есть в html коде строки вида:
function(54)
function('54')
function(54,",")
Типа вызов функций.
И вот парсится это, получаем то, что между скобками, и нужно это разбить на параметры
Допустим получили мы 54","34',34,"ab,ac",10,20
Как разбить это без использования eval
Чтобы получилось
54","34
34
ab,ac
10
20
Представьте вызов функции: my_function('54","34',34,"ab,ac",10,20) И вот нужно получить формальные параметры
  • Вопрос задан
  • 499 просмотров
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Посимвольно перебираем строку, проверяем не попался ли нам разделитель и не находится ли он в экранируемой зоне.

Набросал пример: ideone.com/jGep4I
Поддерживает несколько видов кавычек и несколько видов разделителей.
Есть и проблемные места - пропускает не совсем корректные аргументы, см 634 в третьем примере. Это тоже решаемо, но нужны уточнения, по каким правилам разбирать строку.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы