Zemřel Rob Grant, spolutvůrce kultovního sci-fi seriálu Červený trpaslík.
Apple oznámil, že iPhone a iPad jako první a jediná zařízení pro koncové uživatele splňují požadavky členských států NATO na zabezpečení informací. Díky tomu je možné je používat pro práci s utajovanými informacemi až do stupně „NATO Restricted“, a to bez nutnosti instalovat speciální software nebo měnit nastavení. Žádné jiné běžně dostupné mobilní zařízení tak vysokou úroveň státní certifikace dosud nezískalo.
Americký provozovatel streamovací platformy Netflix odmítl zvýšit nabídku na převzetí filmových studií a streamovací divize konglomerátu Warner Bros. Discovery (WBD). Netflix to ve čtvrtek oznámil v tiskové zprávě. Jeho krok po několikaměsíčním boji o převzetí otevírá dveře k akvizici WBD mediální skupině Paramount Skydance, a to zhruba za 111 miliard dolarů (2,28 bilionu Kč).
Americká společnosti Apple přesune část výroby svého malého stolního počítače Mac mini z Asie do Spojených států. Výroba v závodě v Houstonu by měla začít ještě v letošním roce, uvedla firma na svém webu. Apple také plánuje rozšířit svůj závod v Houstonu o nové školicí centrum pro pokročilou výrobu. V Houstonu by měly vzniknout tisíce nových pracovních míst.
Vědci Biotechnologické společnosti Cortical Labs vytvořili biopočítač nazvaný CL1, který využívá živé lidské mozkové buňky vypěstované z kmenových buněk na čipu. Po úspěchu se hrou PONG se ho nyní snaží naučit hrát DOOM. Neurony přijímají signály podle toho, co se ve hře děje, a jejich reakce jsou převáděny na akce jako pohyb nebo střelba. V tuto chvíli systém hraje velmi špatně, ale dokáže reagovat, trochu se učit a v reálném čase se hrou
… více »Pro testování byl vydán 4. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).
Ben Sturmfels oznámil vydání MediaGoblinu 0.15.0. Přehled novinek v poznámkách k vydání. MediaGoblin (Wikipedie) je svobodná multimediální publikační platforma a decentralizovaná alternativa ke službám jako Flickr, YouTube, SoundCloud atd. Ukázka například na LibrePlanet.
TerminalPhone (png) je skript v Bashi pro push-to-talk hlasovou a textovou komunikaci přes Tor využívající .onion adresy.
Před dvěma lety zavedli operátoři ochranu proti podvrženým hovorům, kdy volající falšuje čísla anebo se vydává za někoho jiného. Nyní v roce 2026 blokují operátoři díky nasazeným technologiím v průměru 3 miliony pokusů o podvodný hovor měsíčně (tzn., že k propojení na zákazníka vůbec nedojde). Ochrana před tzv. spoofingem je pro zákazníky a zákaznice všech tří operátorů zdarma, ať už jde o mobilní čísla nebo pevné linky.
Společnost Meta (Facebook) předává React, React Native a související projekty jako JSX nadaci React Foundation patřící pod Linux Foundation. Zakládajícími členy React Foundation jsou Amazon, Callstack, Expo, Huawei, Meta, Microsoft, Software Mansion a Vercel.
Zdravím všetkých zdatných
Včera som strávil veľa času hladaním na internete ako spojazdniť (vytvoriť) fukciu regexp vo vyhľadávani v databáze Sqlite3. Tu trosku popísem ako to u mna vyzera. Sqlite dotazy zadávam z bash shellu, nie je spojena s php. Tazke ak potrebujem ziskat vysledok, tak v bash scripte mam nieco takéto:
$otazka="coca cola" # nestaci mi nahradit za coca_cola, potrebujem viac presnejsich kombinacii
sqlite3 -separator \| test.db "select * from zoznam where nazov like '$otazka%';" > vysledokAlebo sa opytam este takto. Viete mi poradit podobnu a jednoduchu databazu ako je sqlite3? Poziadavky:
import z csv, ovladanie cez prikazovy riadok, dostatocne rychla.
Dakujem.
Dakujem za odpoved.
Dnes este rano som skompiloval ten zdrojak ktory tu uvadzate, nachádzal sa priamo v src sqlite. Dostal som vysledok SqliteIcu.so, nakopiroval do /usr/lib/ (tam bolo aj sqlite.so). A nevedel som ako dalej. Podla toho co som cital v readme, tak staci len nakopirovat, ale nejak sa mi nedari s tym pracovat.
Mne sa zatial podarilo zistit aj dalsia moznost (ak som to dobre pochopil?), tak táto "fičurina" sa da zakomponovat priamo do sqlite úpravou func.c a znova skompilovat. Este su dalsie dve moznosti. Tou prvou je pysqlite, moc som o tom este nezistoval, ale je to connect na databazu, kde sa da aj nadefinovat vlastna funkcia. Potom dalsia moznost, do ktorej sa asi pustím je cely script z bash prepisat do PHP, kde sa tak isto da spravit connect na sqlite databazu a v php si nadefinovat vlastnu sqlite funkciu. Ale neviem aky to bude mat dopad na rychlost. (a ani neviem ako to vlastne funguje, ako sa sqlite dozvie o funckii?? asi nijak, skor si myslim, ze za budu vysledky potom filtrovat v PHP)
Co sa tyka pouzita, najst slovne spojenie a jeho variacie (coca.cola, coca-cola, coca_cola, coca&cola) v názve. Najprv, hladat s medzerou, potom s variaciami ako samostatny vyskyt, potom iba na zaciatku vety, potom kdekolvek vo vete, a nakoniec aj akekolvek spojene aj s inym slovom. Tj vytriedit podla revelancie. Zatial nemam s sqlite moc skusenosti, no viem, ze fungoval by nasledujuci sposob:
najst vsetky vyhovujuce vyskyty (LIKE '%coca_cola%' ,vysledok bude napr. 500 z 500.000), a vysledok ulozit ako csv, potom ho importovat ako samostatnu tabulku a az na novej tabulke viacnasobne podniknut rozne filtre cez REGEXP a vysledok postupne ukladat a tymto sposobom budem mat aj zotriedeny vysledok podla revelancie, tj to najvýstižnejšie na zaciatku, bordel na konci.
Ide o to, ze REGEXP zakomponovany priamo v sqlite bude o dost rychlejsi ako v PHP alebo pythone (myslim). Este dnes sa pokusim to nejak dostat priamo do sqlite, ak nie, zacnem testovat moznosti a rychlost v php.
PS: tak a mám to!! Ste ma nakopli
vyzera ze to pojde, tu je postup:
------>>
Stiahnut sqlite source (nie sqlite amalgamatio!)
skompilovat s podporou extension: (to som prvy krat neurobil a preto mi neslo natihanut rozsirenie)
./configure --enable-load-extension
make
make install (alebo checkinstall)
Skompilovat extension ICU (islo to v pohode, iba doinstalovat jeden balicek)
sudo apt-get install libicu36-dev
cd ext/icu
gcc -I ../../src -shared icu.c `icu-config --ldflags` -o libSqliteIcu.so
sudo cp libSqliteIcu.so /usr/lib/ (nakopirujeme to do systemu)
icu-config --ldflags
v sqlite natiahnut rozsierenie:
.load libSqliteIcu.so (no a toto mi neslo kvoli tomu, ze som nedal --enable-load-extension)
let's go!
Tak som spokojny, funguje tak ako ma, je to rychle. Ale mam zas problem s tym, ze LIKE bolo case insensitive a rad by som tuto moznost vyuzil aj v REGEXP. A neviem ci je to vlastne mozne.
OK, mam aj to. Staci pred vyraz pouzit (?i). Ináč za dva dni som nikde na nete nenasiel konkrétny návod ako na to. Mozno by nebolo odveci to niekde vypichnut, myslim ten regexp v sqlite.
Je pekne ze to funguje ako ma, ale neviem ako docielit toho, aby som to natiahol jednym prikazom zo shellu. Ide o to, ze spustim sqlite a musim zadat prikaz .load libSqliteIcu.so
Ale ako to urobit jednym prikazom zo shellu? Toto by mi teraz nefungovalo, lebo musim to natiahnut. Ale ako? Nejak to tam naimplementovat.
sqlite3 -separator \| test.db "select * from zoznam where nazov regexp '^otazka.*';" > vysledok
Na manualovej stranke sa pise o volbe -init za ktorou nasleduje nazov suboru, v ktorom mozu byt interne prikazy pre sqlite. Nasiel som aj "prikladny" subor, ktory mn vobec nefungoval, ale osvedcilo sa to takto:
Vytvorit subor napr. s menom commands, do neho vlozit tieto riadky:
.separator |
.load libSqliteIcu.so
A príkaz v shelli vyzera nasledovne:
sqlite3 -init commands test.db "select * from zoznam where nazov regexp '^otazka.*';"
PS: Dnes budem spokojne spat 
Este doplním, ze ve tom súbore s príkazmi mi nie vzdy (dve verzie OS) fungoval príkaz .quit (alebo .q). Jednoducho sa vsetko vykonalo ako malo, len nenastal exit z sqlite3.
Tak riesim to quitom v cli riadku:
sqlite3 -init commands test.db '.quit'
A este pridávam uplne na zaciatok súboru s príkazmy paramater .echo ON ,nech vidím co sa deje.
Este som sa dostal k dalsej moznosti rozsirena Sqlite3 a tou je fulltextové vyhladávanie pomocou funkcie FTS3. Tiež mi ju bolo treba "aktivovat" pri kompilácii. Tazke ak by sme chceli REGEXP a MATCH s FTS3, treba to nakonfigurovat pri kompilácii nasledovne:
CFLAGS="-DSQLITE_ENABLE_FTS3=1" ./configure --enable-load-extension
Nová tabulka:
CREATE VIRTUAL TABLE zoznam using FTS3(nazov, popis);
Full text search: (Viac moznosti syntaxe je v README syntax)
SELECT * FROM zoznam WHERE nazov MATCH 'otazka*';
Ale najlepsie na tom je moznost ulozenia vysledku do noveho pola(stlpca) a zvyraznenie vysledku pomocou HTML tagov pomocou snippet
SELECT *,snippet(zoznam,'<strong>','</strong>') FROM zoznam WHERE nazov MATCH 'cola*';
vysledok a match zvyrazneny:
coca cola | black accid | <strong>coca</strong> cola
Tiskni
Sdílej: