Autor Zpráva
Shaim
Profil
Dobrý den,

rád bych z tohoto původního textu:
NECO {AAA} JESTE NECO {ABC} DALSI {DEF} HMHMH

Získal tento:
NECO JESTE NECO DALSI HMHMH

Tzn, umazat vše, co se nachází mezi znaky {} nicméně pouze tak, aby to smazalo to, co je bezprostředně uvnitř, tzn pouze znaky z řady A-Z. Bohužel se mi to nedaří pořešit.

Za pomoc budu vděčný. V případě, že by ten výskyt byl v textu pouze jednou, tak bych s tím neměl problém - to je OK, ale jak se mi objeví víckrat, už je problém a nefunguje to správně.

Děkuji.
juriad
Profil
$x = "NECO {AAA} JESTE NECO {ABC} DALSI {DEF} HMHMH";

$x = preg_replace('/\{.*?\}/', '', $x); # odstranit celé ty závorky

echo $x;

Ještě dodám jiné řešení, použij regulární výraz: '/\{[^}]*\}/' - povolíš aby po závorce { následovaly jakékoly znaky kromě ukončovací závorky }.
Shaim
Profil
juriad:
Pecka. Díky moc, ušetřil jsi mi trápení! :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: