Регулярные выражения на все случаи жизни

Извините, я наверное не полностью обрисовал всю картину. В тексте конечно же могу встречаться и запятые, и двоеточия и все остальные знаки препинания, а так же цифры, возможны даже рабочие символы. Поэтому данное регулярное выражение не подходит, нужно именно что бы искало все пробелы кроме тех, перед которыми стоят ! ? .
C#
C#:
Развернуть Свернуть Копировать
var str = "Текст, текст текст. Текст текст. Текст! текст текст.";
var regex = new Regex(@"(?<![\?\.!])\s+");
var outlist = new List <string>();
regex.Matches(str).Cast<Match>().ToList().ForEach(m=>outlist.Add(m.Value));
return outlist.Count;
 
  • Спасибо
Реакции: revan
C#:
Развернуть Свернуть Копировать
var str = "Текст, текст текст. Текст текст. Текст! текст текст.";
var regex = new Regex(@"(?<![\?\.!])\s+");
var outlist = new List <string>();
regex.Matches(str).Cast<Match>().ToList().ForEach(m=>outlist.Add(m.Value));
return outlist.Count;

А в чем отличае от предыдущего регулярного выражения? Мне просто надо будет сделать замену рандомного пробела на ключевое слово, со сниппетом не уверен, что получиться реализовать.
 
Привет всем. Подскажите регулярное выражение, для текста в в формате txt, разбитый по строкам. Нужно проставить точки, в конце предложений, там где их нет. И там где предложение начинается с маленькой буквы, сделать начальную букву заглавной.
 
Привет всем. Подскажите регулярное выражение, для текста в в формате txt, разбитый по строкам. Нужно проставить точки, в конце предложений, там где их нет. И там где предложение начинается с маленькой буквы, сделать начальную букву заглавной.
C#:
Развернуть Свернуть Копировать
string text = project.Variables["text"].Value; // переменная с текстом
Regex reg = new Regex(@"\.?\r\n");
text = reg.Replace(text, ".\r\n");

string[] s = Regex.Split(text, @"(?<=([\u2026\.\!\?]+\ )|\n)");
for (int i = 0; i < s.Length; i++)
{
    if (s[i].Length > 1)
        s[i] = s[i].Substring(0, 1).ToUpper() + s[i].Substring(1, s[i].Length - 1);
    else s[i] = s[i].ToUpper();
}
return string.Join("", s);
 
  • Спасибо
Реакции: udder, romanss и CSS
Как сделать: если на странице есnm текст в скобках формата (почта@домен.ру) то чтобы его записывало в переменную.
yliLe8p.jpg


Там где парсить результат записано \([\.\-_A-Za-z0-9]+?@[\.\-A-Za-z0-9]+?[\.A-Za-z0-9]{2,})

В чем ошибка?
 
2016-04-18_221618.png

в конце регулярки перед скобкой слэш поставь
 
  • Спасибо
Реакции: AHiTO
Здравствуйте. Подскажите кто может, нужно сделать регулярку по следующим условиям. Нужно постить текст, он из переменной выходит сплошным массивом (т.е. точки есть, но не разбит на абзацы), нужно разбить текст на абзацы, желательно не одинаковые, по 2-3-4 предложения, рандомно. И после второго абзаца нужно вставить в текст дополнительный абзац из другого файла (или переменной).
 
на форуме есть такое, воспользуйся поиском
 
да я уже искал. Есть ответ, как разбить текст по предложениям, но мне нужно сделать абзацы по 2-3-4 предложения.
 
Разбивайте текст на предложения, которые складывайте в список, далее берите нужное количество строк, добавляйте свой текст и дальше берите еще пару строк.
 
А можно с помощью регулярных выражений найти в тексте нужный символ? Например третью по счету точку, иными словами концовку 3-его предложения?
 
А можно с помощью регулярных выражений найти в тексте нужный символ? Например третью по счету точку, иными словами концовку 3-его предложения?
Можно.
(.*?\.){3}
 
  • Спасибо
Реакции: CSS
а как можно было бы дополнить эту формулу, чтобы этих первых 3 предложения выделились в абзац? Видимо надо добавить <p> в начало и </p> в конец, но как это в формулу оформить?
 
а как можно было бы дополнить эту формулу, чтобы этих первых 3 предложения выделились в абзац? Видимо надо добавить <p> в начало и </p> в конец, но как это в формулу оформить?
Регулряка просто получает данные в переменную. А дальше уже оперируйте этой переменной как хотите, добавляйте перед и после неё всё, что нужно.
 
Эта формула делит текст на абзацы по 3 предложения. А как мне найти концовку именно 3 предложения? Мнет нужно в это место делать вставку из другого файла (тоже текст).
 
Эта формула делит текст на абзацы по 3 предложения. А как мне найти концовку именно 3 предложения? Мнет нужно в это место делать вставку из другого файла (тоже текст).

Так Вы правильно формулируйте задачи. Поменяйте, чтобы это шло перед искомым текстом, т.е. будет так (?<=(.*?\.){3}) и делайте замену этого на свои данные.
 
может кто вкурсе, как со строки(переменной) удалить все символы более 11(удалять вконце!). Символы различные

А то на 3 странице нашел, там тока строчные, а все символы - хз.

"подскажите регулярку.
Нужно с строки удалить первые 6 символов.
Символы маленькие английские буквы
Code (text):
  1. ^[a-z]{6}"
С уважением, Сергей
 
может кто вкурсе, как со строки(переменной) удалить все символы более 11(удалять вконце!). Символы различные

А то на 3 странице нашел, там тока строчные, а все символы - хз.

"подскажите регулярку.
Нужно с строки удалить первые 6 символов.
Символы маленькие английские буквы
Code (text):
  1. ^[a-z]{6}"
С уважением, Сергей
\.{6}
 
  • Спасибо
Реакции: maxtor1986
сделал, спс, помогли))
 
Добрый день! Подскажите регулярку для клика по любой внутренней ссылке сайта с исключениями.
т.е. содержит {-Variable.domen-} и не содержит (jpg)|(gif)|(\.js)|(\.css)|(png)
брал за основу эту:
Поиск строк НЕ содержащих указанную (под)строку:
(?<=(^|\r\n))((?!(test)).)*(?=($|\r\n))
Тэг: а
Атрибут: href

но куда тут воткнуть домен не соображу никак.
(?<=({-Variable.domen-}))((?!(jpg)|(gif)|(\.js)|(\.css)|(png)).)*(?=($|\r\n)) - кликает по внешним.
спасибо
 
  • Спасибо
Реакции: rostonix
Вот doc помог: {-Variable.domen-}((?!\.png|\.jpg|\.js|\.css).)+$ почти работает))
Иногда выскакивает за пределы домена если попадается ссылка вида:

http://polnajopa.net/submit?phase=2&url={-Variable.domen-}?p=88&title=mnogabukaf
или http://twitter.com/home?status={-Variable.domen-}?p=86

Подскажите как решить. Нужно в начало этой регулярки добавить выражение чтоб брались только строки у которых {-Variable.domen-} стоит только в начале строки, а не в ее теле.
 
Всем спасибо. Разобрался. ^({-Variable.domen-})((?!\.png|\.jpg|\.js|\.css).)+$
 
  • Спасибо
Реакции: rostonix
Приветствую! Нужно удалять строки, которые содержат любое 5тизначное число, заранее спасибо!
 
Доброе утро всем! Кто может помочь составить регулярку, всю ночь пытался...
Ничего не вышло.

Есть к примеру такой код:
<div class="vid_title" id=""><span><a href="/news/pogonja_za_proshlym_1_2_3_serija_2015_smotret_onlajn/2016-05-24-14345">Погоня за прошлым 9, 10 серия (2016) - смотреть онлайн</a></span> </div>

<div class="vid_title" id="vid_title2"><span><a href="/news/dorogaja_my_ubivaem_detej_kokhana_mi_vbivaemo_ditej_5_sezon_08_04_2015_smotret_onlajn/2016-05-24-10984">Дорогая мы убиваем детей 7 сезон 12 выпуск (24.05.2016) - смотреть онлайн</a></span> </div>

Нужно достать оттуда:

Дорогая мы убиваем детей 7 сезон 12 выпуск (24.05.2016) - смотреть онлайн
Погоня за прошлым 9, 10 серия (2016) - смотреть онлайн

Как это сделать? Буду очень благодарен, кто поможет.
 
Доброе утро всем! Кто может помочь составить регулярку, всю ночь пытался...
Ничего не вышло.

Есть к примеру такой код:




Нужно достать оттуда:



Как это сделать? Буду очень благодарен, кто поможет.

(?<=<a\ href[^>]+>).*?(?=</a>)
 
  • Спасибо
Реакции: ivanwork1
Спасибо большое!
 

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