Neziskové průmyslové konsorcium Khronos Group vydalo verzi 3.1 specifikace OpenCL (Open Computing Language). OpenCL je průmyslový standard pro paralelní programování heterogenních počítačových systémů.
Homebridge pro integraci chytrých domácích zařízení byl vydán ve verzi 2.0.0. Nově vedle protokolu HomeKit Accessory Protocol (HAP) podporuje standard chytré domácnosti Matter.
Omarchy je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 3.7.0 - The Gaming Edition. Z novinek lze vypíchnout příkaz omarchy a celou řadu herních možností.
CyberChef byl vydán v nové major verzi 11. Přehled novinek v Changelogu. CyberChef je webová aplikace pro analýzu dat a jejich kódování a dekódování, šifrování a dešifrování, kompresi a dekompresi, atd. Často je využívaná při kybernetických cvičeních a CTF (Capture the Flag).
Byla vydána nová verze 2.4.67 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 11 zranitelností.
Brush (Bo(u)rn(e) RUsty SHell) je v Rustu napsaný shell kompatibilní s Bash (Bourne Again SHell). Vydána byla verze 0.4.0.
Google zveřejnil seznam 1 141 projektů (vývojářů) od 184 organizací přijatých do letošního, již dvaadvacátého, Google Summer of Code. Přihlášeno bylo celkově 23 371 projektů od 15 245 vývojářů ze 131 zemí.
Na čem pracovali vývojáři GNOME a KDE Plasma minulý týden? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Open source počítačová hra na hrdiny NetHack (Wikipedie, GitHub) byla vydána v nové verzi 5.0.0. První verze této hry byla vydána v roce 1987.
Evropská komise naléhavě vyzvala členské státy EU, aby kvůli ochraně nezletilých na internetu urychlily zavádění unijní aplikace pro ověřování věku a zajistily její dostupnost do konce roku. Členské státy mohou zavést aplikaci EU pro ověřování věku jako samostatnou aplikaci nebo ji integrovat do takzvané evropské peněženky digitální identity.
Ř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: