/ / Замяна на всички букви и повече от 2 интервала в низ за JavaScript за празен символ - javascript, regex, string

Замяна на всички букви и повече от 2 интервала в javascript низ за празен знак - javascript, regex, string

трябва да заменя в JavaScript низ всички букви и повече от 2 интервала за "". Имам това:

order.Order.Telefonos = order.Order.Telefonos.replace(/[^A-Za-z]|[^Srn]{2,}/, "");

Но когато поръчате.По поръчка.Телефоните имат това:

"CASA: 1111111111      Varios:                Trabajo: 111111111"

върнете ми това:

1111111111Varios:Trabajo:111111111

какво не е наред с моя регекс?

Отговори:

2 за отговор № 1

Използвате отрицание: [^...], Просто използвайте клас символи без отрицание и използвайте глобален модификатор (/..../g) за замяна на всички съвпадения.

var s = "CASA: 1111111111      Varios:                Trabajo: 111111111";
s.replace(/[A-Za-z]|s{2,}/g, "")
// => ": 1111111111:: 111111111"

1 за отговор № 2

Не сте копирали резултата дословно, за вашето въвеждане ще бъде

"CASA 1111111111      Varios:                Trabajo: 111111111"

След това към вашия действителен въпрос: [^A-Za-z] е всичко но букви, пропуснете ^. След това направете глобално търсене с /…/g за да намерите и замените всеки екземпляр.