Подскажите, как в Regex передать массив
Я попытался, но компилятор выдает ошибку
Regex regex = new Regex(keywords);
Как уже было сказано - создать объект класса Regex
из массива Вам не удастся (не поддерживает его конструктор такую сигнатуру, это и очевидно!).
Если Ваша задача звучит так:
хочу, чтобы Regex находил все "слова" в тексте, которые есть в массиве
то Вам действительно необходимо сначала Ваш массив слов преобразовать в строку регулярного выражения:
static string GenRegexStr(string[] words){
var strBuilder = new StringBuilder();
foreach (string word in words)
{
strBuilder.AppendFormat("({0})|", word);
}
strBuilder.Length--; //убираем последний "|"
return strBuilder.ToString();
}
Дальше уже дело за малым:
var elements = new string[] { "text", "lorem" };
var regexStr = Program.GenRegexStr(elements);
var regexp = new Regex(regexStr);
var matches = regexp.Matches("lorem ipsum test text bla bla bla");
foreach(Match match in matches) {
Console.WriteLine(match.Value);
}
Результат:
lorem
text
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Я хочу преобразовать этот SQL в LINQ, но сталкиваются с трудностями, может кто-нибудь мне помочь?
Подскажите, если я найду все необходимые мне свойства и сохраню PropertyInfo в какой-нибудь словарь, то при последующей работе через эту переменную...
Подскажите как установить хук SetWindowsHookEx на определённое окно, к примеру на окно Notepad, и проверять только егоК примеру если я запустил блокнот...