Question

Comment puis-je vérifier si une variable a quelque chose? J'ai essayé de vérifier si un .match() retourné null mais qui n'a pas été utile pour vérifier avec un OR?

Était-ce utile?

La solution

Comme vous n'avez des réponses concernant les expressions rationnelles, voici la solution de fonctionnement de chaîne simple:

var hasMatch = input.indexOf('cheese') != -1 || input.indexOf('cake') != -1;

Autres conseils

/cheese|cake/.test(a)

vous pouvez ajouter un i à la fin de la regex si vous voulez tester indépendamment de la casse

Essayez ceci:

var myString = 'I love cheese';
var isMatch = new RegExp(/(cheese|cake)/i).test(myString); //should return true

toutes les expressions affichées jusqu'à présent seraient également correspondre « cheeseburger » et « partie de plaisir ». Je ne sais pas si cela est souhaitable ou non, juste au cas où est ici la version qui ne fonctionne pas:

alert(/\b(cheese|cake)\b/i.test("cheese and cake")) // true
alert(/\b(cheese|cake)\b/i.test("cheeseburger and pancake")) // false

Vous ne voulez pas que ce qui suit?

var result = input.match("cheese") || input.match("cake");
var matched = !!('cheese'.match(/(?:cheese|cake)/g));
alert(matched)

Ou RegExp.prototype.test:

var matched = /cheese|cake/i.test('cheese cake');
alert(matched)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top