Как удалить длинный пробел из строки - PullRequest
0 голосов
/ 30 мая 2018

В моем наборе данных есть строковая переменная с большим пробелом, и я не уверен, как ее можно удалить.

Я уже пробовал:

replace x = subinstr(x," ", "", .)

Однако ничего не произошло.

Ниже приведен пример строки:

Используется: элемент, который использовался ранее.У этого предмета могут быть некоторые признаки косметического износа, но он полностью функционирует и функционирует, как задумано.Этот элемент может быть моделью пола или магазином, который был использован.

Я пытаюсь преобразовать его в:

Используется: элемент, который использовался ранее,Предмет может иметь некоторые признаки косметического износа, но он полностью исправен и функционирует, как задумано.Этот предмет может быть моделью пола или магазином, который был использован.См. Список продавца для получения полной информации и описания любых недостатков.

Ответы [ 2 ]

0 голосов
/ 31 мая 2018

Вместо того, чтобы считать количество пробелов, просто обрежьте последовательные символы внутреннего пробела с помощью stritrim().Итак,

replace x = stritrim(x)

Если вы все еще сталкиваетесь с проблемами, в строке могут скрываться другие скрытые символы.В этом случае вы можете использовать что-то вроде charlist .

Ника Кокса.
0 голосов
/ 30 мая 2018

В основном вы должны сказать Stata устранить все пробелы, длина которых не превышает двух символов.

Для меня работает следующее:

clear
set obs 1

generate string = "Used: An item that has been used previously. The item may have some signs of cosmetic wear, but is fully" ///
+ "                                                                       operational and functions as intended. This item may be a floor model or store return that has been used."
generate new_string = subinstr(string,"  ", "", .)

list

Обратите внимание, что я изменил " " на" ".

...