regexp crossword

Nem olyan rég kaptam volt tanítványaimtól (én még papírra nyomtatva), netes keresések alapján kb 2 vgy 3 hete jelent meg:

http://www.coinheist.com/rubik/a_regular_crossword/grid.pdf

Aztán a további keresgélés után találtam ezt is:

http://mariolurig.com/crossword/

Segítség: aki nincs otthon regexp-ben, az akár neki se álljon, amúgy pedig mind a kettőnél un. anchored regexp-ben kell gondolkodni (azaz van az elején egy nem jelölt ^ meg a végén egy szintén nem jelölt $ )

Hozzászólások

:)
Magyar nyelvű kicsit jobb lenne...

Nem lehetett egyszerű ezt összerakni

5 vízszinteshez csalnom kellett :-/ (jó cucc az az /usr/share/dict)

int getRandomNumber() { return 4; }  // ← aláírás
//szabályos kockadobással választva. garantáltan véletlenszerű.  xkcd

Ebből a hozzászólásból kiindulva megint találkoztam pár AWK furcsasággal:

a) az a minta, hogy /RE/ ekvivalens a $0 ~ /RE/ mintával (ez le is van írva pl. a mawk manualban). Ellenben ennek a két formának van egy hátulütője a match( $0, "RE" ) formával szemben (ami funkcionálisan szintén megegyezik az előzőekkel) - ez utóbbi ugyanis állítja az RSTART és az RLENGTH változókat, míg az előzőek nem; szerintem ez csúnya.

b) és amit végkép nem értek, a gawk, mawk, nawk (The-One-True-AWK) hármasból egyedül a gawk adta ki a kívánt eredményt erre:

$ nawk 'match( $0, "^[a-f]{1,3}...$" ) == RLENGTH == 4' << EOF
alma
korte
barack
fuge
EOF
$

Tekintettel arra, hogy ha (az egyébként adott esetben redundáns) 1-3-ig részt kihagyom, akkor jól működik mindegyik, ez számomra eléggé érthetetlen volt. Mind a 3 awk manualja egyértelműen leírja, hogy egrep szintaxist használ az awk. (Mondjuk a mawk - az egrep-re utalás mellett - felsorolja, hogy nála mi a RE, és abban nincs {}. Az nawk viszont csak utalást tartalmaz az egrepre.)
Mondjuk ezt találtam a gawk man-ban: hagyományosan az un. interval expression nem volt elérhető az awk megvalósításokban, bár a POSIX kötelezővé tette. Azaz ezt akkor értem, kivéve, hogy míg a mawk-ot szerintem lassan 10-15 éve nem fejlesztik, addig az NAWK folyamatos fejlesztés alatt van, így szerintem ezt kéne tudnia.

Kösz, ez meglepett. Előkaptam a bibliát (Arnold Robbins - a gawk szerzője - sed & awk 2d edition c. könyvét), és abban is szerepel, hogy a POSIX tudja, régebbi verziók viszont nem. Az a furcsa, hogy emlékeim szerint amikor én tanultam (bő 20 éve), akkor azon a rendszeren működött az egrep-ben a {} . (De mivel olyan működő gép kb már sehol nincs, ellenőrizni már nem nagyon fogom. De lehet, hogy előkapom a manualt - az azóta is megvan - és megnézem abban.)

OMG! Mekkora császár cucc!
---
Régóta vágyok én, az androidok mezonkincsére már!

Én perverz vagyok, ha rögtön a PDF-fel kezdtem? :D

Kb 2-2,5 óra lettem meg vele, kíváncsi vagyok másoknak mennyi időbe telik.

---
Régóta vágyok én, az androidok mezonkincsére már!