Как я могу проверить, соответствует ли RegEx строка точно ?
var r = /a/; r.test("a"); // returns true r.test("ba"); // returns true testExact(r, "ba"); // should return false testExact(r, "a"); // should return true
либо
var r = /^a$/
или
function matchExact(r, str) { var match = str.match(r); return match && str === match[0]; }
Напишите свое регулярное выражение по-другому:
var r = /^a$/; r.test('a'); // true r.test('ba'); // false
Если вы не используете никакие заполнители (как, по-видимому, подразумевается "точно"), как насчет сравнения строк вместо этого?
Если вы используете заполнители, ^ и $ соответствуют началу и концу строки соответственно.
^
$
var data = {"values": [ {"name":0,"value":0.12791263050161572}, {"name":1,"value":0.13158780927382124} ]}; //JSON to string conversion var a = JSON.stringify(data); // replace all name with "x"- global matching var t = a.replace(/name/g,"x"); // replace exactly the value rather than all values var d = t.replace(/"value"/g, '"y"'); // String to JSON conversion var data = JSON.parse(d);