Describe the bug
Comparing attribute values, which contain a semicolon does not work
Code sample or steps to reproduce
// Note the xyz; contains a semicolonexportconstfoodata={obj: [{foo: 'abc'},{foo: 'xyz;'},{foo: 'efg'}],};// CASE 1 // WORKS!! Produces 1 resultletresult=JSONPath({path: `$..*[?(@.foo==="abc")]`,json: foodata,});console.assert(result.length>0,'Nothing found for simple comparison ');// CASE 2:// semicolon directly specified in the key string // BUT DOES NOT WORK!!! No resultsresult=JSONPath({path: `$..*[?(@.foo==="xyz;")]`,json: foodata,});console.assert(result.length>0,'Nothing found with direct use of ";" ');// CASE 3// WORKAROUND : Need to specify the semicolon with an escape expression// WORKS!!! Produces 1 resultresult=JSONPath({path: `$..*[?(@.foo==="xyz\\u003b")]`,json: foodata,});console.assert(result.length>0,'Nothing found with escaped version of semicolon');Console error or logs
Assertion failed: Nothing found with direct use of ";"
Expected behavior
Case 2 should work as Case1, i.e. a client should not need to escape the semicolon in the comparison operand
Expected result
For Case 2 the same as for Case 3
Environment (IMPORTANT)
- JSONPath-Plus version: 7.2.0
Desktop**
Additional context
Describe the bug
Comparing attribute values, which contain a semicolon does not work
Code sample or steps to reproduce
Console error or logs
Assertion failed: Nothing found with direct use of ";"
Expected behavior
Case 2 should work as Case1, i.e. a client should not need to escape the semicolon in the comparison operand
Expected result
For Case 2 the same as for Case 3
{ foo: 'xyz;' }Environment (IMPORTANT)
Desktop**
Additional context