Reguliere expressies

  • Onderwerp starter Onderwerp starter Lud
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

Lud

Gebruiker
Lid geworden
3 mei 2004
Berichten
6
Het volgende stukje Javascript checkt op de aanwezigheid van twee underscores in een string en geeft True terug:

re = /__/;
var str = "/bla/__flash/index.html";
re.test(str);

Hoe ziet de reguliere expressie er uit die hier False geeft, dus, die op alle strings True returnt, behalve bij strings met twee underscores erin?
 
Het makkelijkste is de voorwaarde omdraaien.

Dus de reguliere expressie hetzelfde houden maar dan:

if (re.test(str))
{
// doe niets omdat er twee underscores in zitten
}
else
{
// de string bevat geen underscores
// instructies....
}


Btw...

Ik heb op mijn site een programma ontwikkeld waarmee je makkelijk reguliere expressies kan maken:


http://www.wernand.net

en kies dan in de lijst voor de optie reguliere expressies
 
Sorry, dat is eigenlijk niet helemaal wat ik bedoelde. Ik gaf de Javascript-code als voorbeeld om duidelijk te maken wat ik wilde, maar eigenlijk heb ik de reguliere expressie nodig in een string op een webserver, waar statistieken van bezochte pagina's bijgehouden worden. Ik heb dus geen code om de uitkomst van de expressie om te draaien...

Ik heb het programmaatje op je site bekeken, maar volgens mij doet dat niet veel meer dan mijn bovenstaande stukje Javascript: het kijkt of een bepaalde expressie True of False teruggeeft. Maar wellicht zie ik iets over het hoofd?
 
Deze regular expression geeft altijd true wanneer er geen characters in zitten buiten het bereik welke tussen de haken staan:


^[a-zA-Z0-9-/:.~]+$


Geeft true:

http : //www.wernand.net/~w.hoefsloot1/flash/index-1.html

Geeft false:

http : //www.wernand.net/~w.hoefsloot1/__flash/index-1.html
:thumb:
 
Dat is inderdaad een goede: gewoon checken op de tekens die er wel in voor mogen komen. Alleen weet ik niet zeker of er in mijn geval wel 1 underscore, maar niet meer dan 1 underscore in de string mag zitten, maar dat zoek ik nog op.
Merci.
:thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan