Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.
Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.
Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.
Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.
Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.
Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.
Společnost Murena představila (YouTube) novou verzi 4.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.
V Arch User Repository (AUR) bylo kompromitováno přes 400 opomíjených balíčků (jejich seznam). Útočník do nich začlenil škodlivý npm balíček atomic-lockfile, který krade citlivá data uživatelů. Publikována byla předběžná analýza spouštěného malwaru deps.
Homebrew, správce balíčků nejen pro macOS, byl vydán ve verzi 6.0.0 (seznam změn). Hlavními novinkami jsou bezpečnostní mechanismus tap trust kvůli důvěryhodnosti závislostí, vylepšení sandboxingu na Linuxu, interní JSON API nebo zlepšení výkonu.
Byla nalezena a 9. června opravena kritická zranitelnost ve FreeBSD v Kernel TLS (KTLS). Pojmenována byla Bumsrakete (FreeBSD-SA-26:26.ktls, CVE-2026-45257). Lokální neprivilegovaný uživatel může přepisovat soubory, ke kterým má právo pouze pro čtení. Přepsáním setuid binárky a jejím spuštěním může získat roota. Na všech verzích od verze 13.0 vydané v dubnu 2021.
Ř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: