Eem ja, hoe leg je dat nou uit.. Voorbeeldje maar denk ik
Ik wil dus alles tussen alle paren <script> en </script> weghalen, maar alles wat daar niet tussen staat (de hoi in dit voorbeeld) laten staan. In dit voorbeeld gaat dit fout, omdat sed alles tussen de eerste <script> en de laatste </script> weghaalt.
Ik had het volgende al geprobeerd:
maar dan blijft er staan:
De vraag: hoe krijg ik wél een letterlijke string in een [^]* constructie?
Ik hoop dat mijn vraag duidelijk is
code:
1
| echo "<script>moet weg</script>hoi<script></script>" | sed -e 's/<script>.*<\/script>//g' |
Ik wil dus alles tussen alle paren <script> en </script> weghalen, maar alles wat daar niet tussen staat (de hoi in dit voorbeeld) laten staan. In dit voorbeeld gaat dit fout, omdat sed alles tussen de eerste <script> en de laatste </script> weghaalt.
Ik had het volgende al geprobeerd:
code:
1
| echo "<script>moet weg</script>hoi<script></script>" | sed -e 's/<script>[^<\/script>]*<\/script>//g' |
maar dan blijft er staan:
code:
omdat de [^</script>]* een set is, en niet een letterlijke string.1
| <script>moet weg</script>hoi |
De vraag: hoe krijg ik wél een letterlijke string in een [^]* constructie?
Ik hoop dat mijn vraag duidelijk is