кинотеатры или обратно в 90-ые

О 90, какие были времена, сколько возможностей, сколько шансов.
Для кого-то эта эпоха затянулась, прямо скажем, до сегодняшних дней. Решили мы вечерком поздним в кинотеатр пойти, и чтобы без неожиданностей, предварительно забронировать. А как оказалось, единственная возможность это сделать, это позвонить по платному короткому номеру. и обычный номер, ни что уж там говорить, интернет, для таких целей не приспособлены.

Товарищи из карофильм, к совести вас призывать бесполезно, будьте хотя бы поскромнее.

RegExp

Как обычно, появилась интересная задачка по регулярным выражениям, требуется написать некоторый макрос, который при встрече в шаблоне текста будет заменяться определенными значениями сформированными из параметров макроса. И чтобы было не совсем тривиально будет еще упрощенная версия этого же макроса.

упрощенный макрос link{«text»,id} и полная версия link{«text»,id}img{id}, результат их работы будет таков
макрос номер 1:
<a href="link_id">text</a>
макрос номер 2:
<a href="link_id">text<img src="img_id"></a>

регулярное выражение для полной версии макроса
/link\{«(.*?)»,([0-9]+)?)\}img\{([0-9]+?)\}/
и соответственно для упрощенной
/link\{«(.*?)»,([0-9]+?)\}/

пример шаблона:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed arcu link{«lorem»,10}img{20}, semper id dictum sit amet, egestas a dui. Donec condimentum link{«gravida ullamcorper»,5}.

результат работы регулярного выражения для полной версии макроса lorem, 10, 20
результат работы для упрощенной: lorem»,10}img{20}, semper id dictum sit amet, egestas a dui. Donec condimentum link{«gravida ullamcorper, 5

Прямо скажем, не то что я ожидал увидеть. Пробовал разные варианты ограничить жадность квантификаторов, даже всякие магически пасы в виде ?!, ?!= и прочих, пока без просвета.

все — кончено!, все — начато!

ПОЖАР В АРХИТЕКТУРНОМ ИНСТИТУТЕ
Пожар в Архитектурном!
По залам, чертежам,
амнистией по тюрьмам —
пожар, пожар!

По сонному фасаду
бесстыже, озорно,
гориллой краснозадой
взвивается окно!

А мы уже дипломники,
нам защищать пора.
Трещат в шкафу под пломбами
мои выговора!

Ватман — как подраненный,
красный листопад.
Горят мои подрамники,
города горят.

Бутылью керосиновой
взвилось пять лет и зим…
Кариночка Красильникова,
ой! горим!

Прощай, архитектура!
Пылайте широко,
коровники в амурах,
райклубы в рококо!

О юность, феникс, дурочка,
весь в пламени диплом!
Ты машешь красной юбочкой
и дразнишь язычком.

Прощай, пора окраин!
Жизнь — смена пепелищ.
Мы все перегораем.
Живешь — горишь.

А завтра, в палец чиркнувши,
вонзится злей пчелы
иголочка от циркуля
из горсточки золы…

…Все выгорело начисто.
Милиции полно.
Все — кончено!
Все — начато!
Айда в кино!
1957

закатаем в асфальт Москву


Сколько себя помню рядом с домой было футбольное поле, огороженная и облагороженная площадка для спорта. На ней всегда были ребята и взрослые с мячом.
До этого лета. Огорождения спилили, ворота убрали. Сняли дерн и навезли камазами асфальтовую крошку. такая же судьба ждала и волейбольную площадку находившуюся по соседству.

Видимо играть в футбол и волейбол теперь не модно. Продвинутые граждане облепляют лавочки и паркуют свои машины на бывшей спортивной площадке.
К слову сказать, асфальтификация Москвы наступает, но что-то не спокойно становится мне, когда ее жертвами становятся и так не многие центры культурного или физического развития.

regexp

как интересно получить из этого
«123| 1.doc, 6433| (1,2,3).rtf, 8536| ytu.dat»
массив
string[] {«123| 1.doc»,»6433| (1,2,3).rtf»,»8536| ytu.dat»}

на ум пришла такая регулярка /(\d+?\|.+?),?/, но в лоб такая конструкция возвращает только \d+\|, оставляем .+, и выражение берет всю строку, что бы сделать с жадностью квантификатора.

upd:
решение как всегда оказалось намного проще 🙂

Regex regex = new Regex(",(?=s*\\d+\\|)");
var parts = regex.Split(files);           

*

Моей звезде не суждено

Дыхание тишины

плоскость

мы стояли на плоскости…

задачка

есть таблица данных (id, № страницы, № пользователя, флаг голосования).

пример таблицы:

нужно выбрать все записи по которым проголосовали все обозначенные в таблице пользователи.

вот эти:

для этой задачки подходит вот такой запрос:

SELECT DISTINCT c1.[page]      
			FROM [dbo].[table] as c1
			LEFT JOIN  [dbo].[table] as c2 
			ON c1.page = c2.page
		WHERE c2.voite = 1