Ошибка при минимизации JS с регулярным выражением в комплекте asp.net
Я получаю сообщение об ошибке ниже при упаковке файлов JS в моем приложении ASP.NET MVC 5
/* Минификация не удалась. Возврат незавершенного содержимого.
(3828,34-35): ошибка времени выполнения JS1013: синтаксическая ошибка в регулярном выражении:.
(3789,41-42): ошибка времени выполнения JS1013: синтаксическая ошибка в регулярном выражении:.
Регулярное выражение на 3828
function formatPhoneNumber(value) {
value = value.replace(/(\d{3})(\d{3})(\d{4})/, "$1-$2-$3");
return value;
}
в 3789
var isValid = /^[0-9,.$-\s\n]*$/.test(value);
Оба выражения работают нормально, но не уверены, почему пакетирование не может их минимизировать
Обновление 1
common.js имеет регулярные выражения
bundles.Add(new ScriptBundle("~/Scripts/js").Include(
"~/Scripts/jquery.extensions.js",
"~/Scripts/common.js",
"~/Scripts/format.js"));
и в _layout.cshtml
@Scripts.Render("~/Scripts/js")
1 ответ
Я нашел это Не было проблемы с форматом PhoneNumber. Однако была проблема с isValid
регулярное выражение. Ошибка была You can not create a range with a shorthand escape sequences
Поэтому я заменил /^[0-9,.$-\s\n]*$/
с /^[0-9,.$\-\s\n]*$/
https://regex101.com/ очень полезно. На самом деле показывает сообщение об ошибке.