Вырезать все слова из списка

radik2806

Client
Регистрация
22.09.2017
Сообщения
13
Благодарностей
1
Баллы
3
Приветствую коллеги!

Передо мной стоит задача, нужно вырезать все слова из списка из определенной строки, для этого я написал C# снипет. Так как ранее никогда не прогил на шарпе, столкнулся с проблемой. Может кто знает в чем косяк?

Вот код:

string textContains = project.Variables["first_word"].Value;
var sourceList = project.Lists["my_words"];
lock(SyncObjects.ListSyncer)
{
for(int i=0; i < sourceList.Count; i++)
{
textContains = textContains.Replace(sourceList,' ');
}
}

return sourceList;

Выдает ошибку
"Аргумент "2": преобразование типа из "char" в "string" невозможно". [Строка: 6; Cтолбец: 53]

Я не понимаю, почему из невозможно преобразование?(
 

radik2806

Client
Регистрация
22.09.2017
Сообщения
13
Благодарностей
1
Баллы
3
При простинге обрезались скобки

Код:
string textContains = project.Variables["first_word"].Value;
var sourceList = project.Lists["my_words"];
lock(SyncObjects.ListSyncer)
{
	for(int i=0; i < sourceList.Count; i++)
	{
		textContains = textContains.Replace(sourceList[i],' ');
	}
}

return sourceList;
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 685
Благодарностей
4 641
Баллы
113
во-первых, Replace(sourceList," ");
во-вторых, ты уверен, что тебе нужно возвращать список?
 

radik2806

Client
Регистрация
22.09.2017
Сообщения
13
Благодарностей
1
Баллы
3
Если ставить пустую строчку в replace, то ругается на то, что ожидалась строка.
Задачу я решил костылем, может кому пригодится, сперва подготавливаем регулярку, в которой будут все элементы списка:
Код:
var sourceList = project.Lists["my_words"].ToArray();
return string.Join("|", sourceList.Reverse());
Затем, удалил все элементы по регулярке с помощю функции обработка текста - замена
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)