Удалить пробелы и кавычки за пределами слов и оставить один пробел между словами - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть строка с кавычками и пробелами вроде ' TEST 123 ' или " TEST 123 ".Как я могу удалить пробелы и кавычки вне слов и оставить один пробел между словами.Ожидаемый результат: TEST 123

Ответы [ 2 ]

1 голос
/ 22 апреля 2019

удалить лишние пробелы в строке javascript

newString = string.replace (/ \ s + / g, ''); // "thiscontainsspaces"

newString = string.replace (/ \ s + / g, '') .trim ();

0 голосов
/ 22 апреля 2019

Вы можете использовать это регулярное выражение,

^[ '"]+|[ '"]+$|( ){2,}

И заменить его на $1, где $1 захватывает один пробел, но в случае, когда есть два или более пробелов.

Здесь ^[ '"]+ соответствует любому пробелу, одинарной или двойной кавычке, одной или нескольким от начала строки, и аналогично [ '"]+$ также соответствует любому пробелу, одинарной или двойной кавычке, одной или нескольким в конце строки, и заменяется пустой строкой. где, когда ( ){2,} совпадений, которые должны быть сопоставлены в середине строки, заменяется одним пробелом, захваченным в group1.

Regex Demo

Пример JS демо,

var arr = ["' TEST   123  '",'"  TEST  123  "'];

for (s of arr) {
 console.log(s + " --> " + s.replace(/^[ '"]+|[ '"]+$|( ){2,}/g,'$1'));
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...