J'ai quelque chose comme ce qui suit dans une chaîne:Mathematica StringReplace pour remplacer une sous-chaîne contenant les nouvelles lignes
blah blah
BEGINIGNORE
this stuff should get stripped out
ENDIGNORE
more stuff here
Je voudrais faire (syntaxe perl):. S/BEGINIGNORE * ENDIGNORE // s - à savoir, dépouiller tout entre BEGINIGNORE et ENDIGNORE, inclusivement. Vous penseriez ce qui suit ferait que Mathematica:
StringReplace[str, re["BEGINIGNORE[.\\s]*ENDIGNORE"]->""]
Mais il ne fonctionne pas. Comment est-ce que je fais ceci dans Mathematica?
PS: Je définir l'alias suivant: re = RegularExpression;
La raison est que (entre crochets) correspond à un point, une barre oblique, ou un "s" "[\ s.]" , alors que "(. | \ n)" correspond à n'importe quel caractère sauf un saut de ligne (le point) ou un saut de ligne (le "\ n"), ce que vous voulez, – MarkusQ
je vois. Merci Markus! (J'ai confirmé que dans Perl cela fonctionne comme je m'y attendais, ce qui me semble être le comportement le plus raisonnable.) – dreeves