Регулярное выражение Chrome соответствует символу, который не должен - PullRequest
2 голосов
/ 26 июня 2019

Я использовал этот код для преобразования определенных символов в объекты HTML:

var rawStr = 'https://foobars.com';

var encodedStr = rawStr.replace(/[\u00A0-\u9999<>\&]/gim, function(i) {
  return '&#' + i.charCodeAt(0) + ';';
});

console.log(encodedStr);

Это также преобразует букву "s", но только в Chrome (75.0.3770.100, Windows 10), а не в других браузерах. Вот пример Regex101 , демонстрирующий такое же странное поведение:

image

Почему это происходит и почему только в Chrome?

...