Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za březen (YouTube).
ESP-IDF (Espressif IoT Development Framework), tj. oficiální vývojový framework pro vývoj aplikací na mikrokontrolérech řady ESP32, byl vydán v nové verzi 6.0. Detaily na portálu pro vývojáře.
DeepMind (Alphabet) představila novou verzi svého multimodálního modelu, Gemma 4. Modely jsou volně k dispozici (Ollama, Hugging Face a další) ve velikostech 5-31 miliard parametrů, s kontextovým oknem 128k až 256k a v dense i MoE variantách. Modely zvládají text, obrázky a u menších verzí i audio. Modely jsou optimalizované pro běh na desktopových GPU i mobilních zařízeních, váhy všech těchto modelů jsou uvolněny pod licencí Apache 2.0. Návod na spuštění je už i na Unsloth.
Cursor (Wikipedie) od společnosti Anysphere byl vydán ve verzi 3. Jedná se o multiplatformní proprietární editor kódů s podporou AI (vibe coding).
Průkopnická firma FingerWorks kolem roku 2000 vyvinula vícedotykové trackpady s gesty a klávesnice jako TouchStream LP. V roce 2005 ji koupil Apple, výrobu těchto produktů ukončil a dotykové technologie využil při vývoji iPhone. Multiplatformní projekt Apple Magic TouchstreamLP nyní implementuje funkcionalitu TouchStream LP na současném Apple Magic Trackpad, resp. jejich dvojici. Diskuze k vydání probíhá na Redditu.
Byla vydána nová verze 10.3 sady aplikací pro SSH komunikaci OpenSSH. Přináší řadu bezpečnostních oprav, vylepšení funkcí a oprav chyb.
Cloudflare představil open source redakční systém EmDash. Jedná se o moderní náhradu WordPressu, která řeší bezpečnost pluginů. Administrátorské rozhraní lze vyzkoušet na EmDash Playground.
Bratislava OpenCamp 2026 zverejnil program a spustil registráciu. Štvrtý ročník komunitnej konferencie o otvorených technológiách prinesie 19 prednášok na rôzne technologické témy. Konferencia sa uskutoční v sobotu 25. apríla 2026 v priestoroch FIIT STU v Bratislave.
Na iVysílání lze zhlédnout všechny díly kultovního sci-fi seriálu Červený trpaslík.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl v březnu 5,33 % (Windows -4,28 %, OSX +1,19 %, Linux +3,10 %). Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 24,48 %. Procesor AMD používá 67,48 % hráčů na Linuxu.
Řešení dotazu:
To samo o sobě nestačí. Vždyť jen pozice tečky v příkladu:
arečv mesj lavomargorp.
Chce to doplnit zadání. I tak to na mě dělá dojem, že ta rutina má převádět do malých písmen — viz počáteční písmenko věty. Pak to ale nebude pracovat obousměrně. Buď je špatně specifikace, nebo příklad. S tímhle materiálem se prostě nedá dělat…
s/\>/#/g2. Dokud je úspěšné (tj. provede se nenulový počet nahrazení), posunuj znak před značkou, kam patří, tj. ekvivalent:
s/(\w*)(\w)#(\w*)/\1#\3\2/g3. Odstraň značky:
s/#//gKonkrétní tvar regulárních výrazů se trochu liší podle jazyka a nahrazení se bude dělat nějakou funkcí/metodou, ale lze to takto udělat v čemkoli od sedu přes C po Javu.
Podivej se na tridu StringBuilder ze zakladniho baliku java.lang - jeji popis nades v JDKcku. Ta obsahuje metodu Reverse(). Coz by melo prakticky byt co hledas, jen to spravne pouzit ...
. Navic je Stringbuilder optimalnim resenim - v pripade velkeho mnozstvi casto se menicich retezcu nebudes vytvaret stale nove instance, jako by tomu bylo v pripade Stringu.
public static String sifruj(String s){
StringTokenizer st = new StringTokenizer(s, " .:!?", true);
String result = "";
while (st.hasMoreTokens()){
result += (new StringBuilder(st.nextToken())).reverse();
}
return result;
}
$x = "Vcera jsem programoval.";
$r = "";
while ($x =~ m/^([^A-Za-z]*)([A-Za-z]+)(.*)$/)
{
$r .= $1 . reverse($2);
$x = $3;
}
$r .= $x;
print "$r\n";
$x = "Vcera jsem programoval.";
while ($x =~ s/^([^A-Za-z]*)([A-Za-z]+)(.*)$/$1 . reverse($2) . $3/e)
{
print "$x\n";
}
vysledek
Vcera jsem programoval. arecV jsem programoval. Vcera jsem programoval. ...ale hlavni duvod proc jsem pouzil jenom m// je ze nevim na jaky urovni jsou RE v jave tak jsem to nechtel zbytecne komplikovat...
String novy_retazec = "";
String slovo;
[kym nie som na konci retazca]
slovo = "";
[kym nenarazim na koniec slova] //napr. medzera
slovo = [aktualne pismeno] + slovo;
novy_retazec += " " + slovo;
Alebo na prevracanie stringov použiť StringBuilder
Tiskni
Sdílej: