Method: JsonPath#normalize
- Defined in:
- lib/json_path.rb
#normalize(expr) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/json_path.rb', line 25 def normalize(expr) subx = []; ex = expr.gsub(/[\['](\??\(.*?\))[\]']/){ |x| subx << $1; "[##{subx.size - 1}]"} ex = ex.gsub(/'?\.'?|\['?/, ";") ex = ex.gsub(/;;;|;;/, ";..;") ex = ex.gsub(/;$|'?\]|'$/, "") ex = ex.gsub(/#([0-9]+)/){ |x| subx[$1.to_i]} ex end |