2010-09-28 3 views
11

Comment savoir si une chaîne commence par une lettre minuscule en utilisant une instruction 'if'?Vérifier si une chaîne commence par une lettre minuscule

+0

double possible de [JavaScript - la vérification de toutes les lettres minuscules dans une chaîne] (http://stackoverflow.com/questions/2830826/javascript-checking-for-any-lowercase-letters-in-a- string) –

+3

ne pas oublier d'accepter une réponse. Il semble que la réponse originale que vous utilisez n'existe plus, vous pouvez donc ajouter votre propre réponse à la solution et l'accepter. cela peut être utile à d'autres personnes qui se promènent. – lincolnk

Répondre

21

Si vous voulez couvrir plus d'un-z, vous pouvez utiliser quelque chose comme:

var first = string.charAt(0); 
if (first === first.toLowerCase() && first !== first.toUpperCase()) 
{ 
    // first character is a lowercase letter 
} 

sont nécessaires Les deux contrôles, car il y a des personnages (comme les numéros) qui ne sont ni en majuscules ou en minuscules. Par exemple:

"1" === "1".toLowerCase() //=> true 
"1" === "1".toLowerCase() && "1" !== "1".toUpperCase() //=> true && false => false 
"é" === "é".toLowerCase() && "é" !== "é".toUpperCase() //=> true && true => true 
+2

Dans quel cas avez-vous besoin du contrôle 'toLowerCase'? Par exemple, où '! = ToUpperCase' n'est pas suffisant? –

+4

Je vous recommande fortement d'utiliser '===' et '! ==' pour éviter les erreurs de coercition de type. C'est une habitude difficile à prendre mais je pense que c'est très bénéfique. – ChaosPandion

+0

+1 très intelligent. – fastcodejava

-2

Cela semble être une utilisation appropriée des expressions régulières.

var match = myString.match(/^[a-z]/); 

if (match != null) { 
    // good match 
} 
+2

C'est une vue extrêmement centrée sur l'anglais du problème. Est-ce que "à" n'est pas une minuscule? –

+0

vous avez raison, et je pense que cela fonctionnerait pour ce cas. Ce ne serait pas adapté à un usage international. J'ai voté pour la réponse de Daniel car c'est plus utile que le mien. – lincolnk

5

ressemble à si un caractère n'est pas égal à son état maj

var first = string.charAt(0); 
if(first!=first.toUpperCase()){ 
    first character is lower case 
} 
Questions connexes