• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] regex match funktioniert nicht.

Du hast du mehrere Probleme:
1. allEmailProvidersThankYouPages ist bei dir ein Array. Das mag natürlich .match() nicht, da es eine RegExp erwartet.
2. .match() liefert keinen String, sondern einen Array mit den ganzen verschiedenen gematchted Teien (das was im RegExp in Klammern ist) zurück.
3. Hast du die Operatorreihenfolge durcheinander gebracht. Das + wird vor der == ausgeführt. Somit vergleichst du "theMach="+theParams mit dem Match.

Code:
var theParams = "order_id=WPMBPZSD&order_item_id=2094473&buyer_email=asdf%40klickpro.de&product_id=68583&product_name=Google+Analytics+%26amp%3B+Conversion+Bootcamp&quantity=1&eticket_location=Analytics+%26+Tracking+Bootcamp&eticket_date=12.06.2016&eticket_hint=&country=DE&buyer_language=de&buyer_id=1171243&buyer_first_name=asdf&buyer_last_name=asdf&billing_status=completed&tags=Bootcamp+Analytics&currency=EUR&amount=534.31&vat_amount=85.31&sha_sign=CBE2CA111EC83FE2AD3CD19A1323E10B2B90C7EDC21E3D06D70E64F8C7CDDCB7E9938B70E13628CC8377821E515381A76BF1F29989E9BE1F5970ADC5F974CA97";
var allEmailProvidersThankYouPages = /order_id=[A-Za-z0-9]{1,10}&order_item_id=[A-Za-z0-9]{1,10}&buyer_email=[a-zA-Z0-9]{1,100}(\%40)[a-zA-Z0-9]{1,100}\.[a-zA-Z]{1,8}&product_id=[0-9]{5}&product_name=[a-zA-Z0-9+\%]{1,100}&quantity=[0-9]{1,5}(.*)/;
var match = theParams.match(allEmailProvidersThankYouPages);
console.log(match);
console.log("theMatch="+(theParams === match[0]));
 
Zurück
Oben