Я пытаюсь встроить удобную возможность запроса dsl-ish в мой javascript.
Дано:
var query = "lastName = 'smith' and firstName = 'jack' or city = 'vancouver'";
каков самый элегантный способ разбора этой строки sql-esque в пригодные для использования объекты, такие как:
[
{
field:'lastName',
operator:'=',
value:'smith',
join:'and'
},
{
field:'firstName',
operator:'=',
value:'jack',
join:'or'
},
{
field:'city',
operator:'=',
value:'vancouver'
}
]
Прежде чем я начал безнадежно зацикливаться, я подумал, что найдется какой-нибудь мастер регулярных выражений с одной строкой.