20. januar 2001 - 17:56Der er
11 kommentarer og 2 løsninger
HASTER! lette point for eksperter!
Mit problem er at jeg har denne her variabel: $message
der står en masse tekst i den, men jeg vil kun ændre noget af det. Et eller andet sted i $message står der: filename=\"blabla?\"
jeg vil gerne fjerne alle ? (spørgsmålstegn) fra teksten mellem de to anførselstegn efter filname=
sådan at der hvor der før stod filename=\"blabla?\" kommer der nu til at stå filename=\"blabla\" Resten af $message skal selvfølgelig ikke ændres, det er kun det sted(er) hvor der står filename=\"blabla?????\" at spørgsmålstegn fjernes.
En anden mulighed er denne $message = qq!her kommer der\\nnoget filename=\"bl?y?pp???\"\\ndad filename=\"??l?y??p???\" asd\\n!; $message =~ s/filename=\"(.*?)\"/\'filename=\"\'.rm($1).\'\"\'/ge; sub rm { my ($f)=@_; $f =~ s/\\?//g; return $f; } print $message ;
Udtrykket $_=$1; s!\\?!!g; $_ fjerner alle ? i $1 og returnerer resultatet $_ skal bruges da $1 er read-only
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.