Maison  >  Article  >  interface Web  >  L'apprentissage des chaînes JS renvoie l'extension du fichier en interceptant les sous-chaînes

L'apprentissage des chaînes JS renvoie l'extension du fichier en interceptant les sous-chaînes

青灯夜游
青灯夜游original
2021-08-17 16:22:222339parcourir

Dans l'article précédent "Apprentissage des chaînes JS : Comment renvoyer la sous-chaîne entre des indices donnés", nous avons présenté la méthode d'interception de la chaîne entre les positions d'indice spécifiées et de renvoi de la partie extraite (sous-chaîne) . Cette fois, nous continuons à apprendre les chaînes JavaScript et à découvrir une autre méthode d'interception de chaînes. Les amis intéressés peuvent en apprendre davantage ~

Le thème de cet article est de présenter la méthode d'interception de chaînes en fonction de la longueur spécifiée, puis de l'utiliser. cette méthode pour voir Voir comment obtenir l'extension de fichier.

Tout d’abord, voyons comment intercepter une sous-chaîne d’une longueur spécifiée et la renvoyer ? Permettez-moi de vous donner une introduction détaillée ci-dessous.

Regardons un exemple :

var str="Hello world!";
var n=str.substr(2,3)
console.log(n);

Résultat de sortie :

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

On peut le voir : Nous utilisons str.substr(2,3) à partir du troisième caractère et interceptant 3 caractères, donc la sous-chaîne renvoyée est "llo". str.substr(2,3)从第三字符开始,截取了3个字符,因此返回的子串为“llo”。

我们来了解一下substr()方法。

str.substr(start,length)方法能够根据指定长度来截取子字符串。它包含两个参数,第一个参数start不可省略,表示准备截取的子字符串起始下标;第二个参数length可省略,表示截取的长度,即需要截取的字符数。

如果省略第二个参数length,那么就会从start开始,截取后面全部的字符。

var str="Hello world!";
var n=str.substr(2)
console.log(n);

输出结果:

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

如果如果第一个参数start为负值,则表示从字符串的尾部开始计算下标位置,即 -1表示最后一个字符,-2 表示倒数第二个字符,以此类推。(这对于左侧字符长度不固定时非常有用。)

var str="Hello world!";
var n1=str.substr(-1,1);
var n2=str.substr(-2,1);
var n3=str.substr(-3,2);
console.log(n1);
console.log(n2);
console.log(n3);

输出结果:

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

通过上文,我们知道可以使用substr()方法来截取指定长度子串,并返回该子串。下面我们来看看利用这种方法怎样来获取文件扩展名。

我们可以使用substr()和lastIndexOf()方法获取文件的扩展名,例如有下面一个文件url

../img/Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

使用下面语句就可获取文件的扩展名:

var str="../img/Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes";
var b = str.substr(str.lastIndexOf(".") ,4);  //截取最后一个点号开始4个字符
console.log(b);  //返回子字符串“.png”

分析:使用str.lastIndexOf(".")

Jetons un coup d'œil à la méthode substr(). La méthode

str.substr(start,length) peut intercepter les sous-chaînes en fonction de la longueur spécifiée. Il contient deux paramètres. Le premier paramètre start ne peut pas être omis, indiquant l'indice de début de la sous-chaîne à intercepter ; le deuxième paramètre length peut être omis, indiquant l'interception. longueur, c'est-à-dire le nombre de caractères qui doivent être interceptés.

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînesSi le deuxième paramètre length est omis, alors tous les caractères suivants seront interceptés à partir du début.

var str="../img/Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes";
var b = str.substr(str.lastIndexOf(".")+1 ,3);  //截取最后一个点号后3个字符
console.log(b);  //返回子字符串“png”

Résultat de sortie :

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

Si le premier paramètre start est une valeur négative, cela signifie que la position de l'indice est calculée à partir de la fin de la chaîne, c'est-à-dire que -1 signifie le dernier caractère, -2 signifie l'avant-dernier caractère, et ainsi de suite. (Ceci est utile lorsque la longueur du caractère gauche n'est pas fixe.)

var str="../img/Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes";
var b = str.substr(str.lastIndexOf(".")+1 );  
console.log(b);
  
var str="../img/1.jpeg";
var b = str.substr(str.lastIndexOf(".")+1 );  
console.log(b);
Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînesRésultat de sortie :

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

Grâce à ce qui précède, nous savons que nous pouvons utiliser la méthode substr() pour intercepter une sous-chaîne d'une longueur spécifiée et renvoyer la sous-chaîne.

Voyons comment obtenir l'extension de fichier en utilisant cette méthode.

Lapprentissage des chaînes JS renvoie lextension du fichier en interceptant les sous-chaînes

Nous pouvons utiliser les méthodes substr() et lastIndexOf() pour obtenir l'extension du fichier. Par exemple, si vous avez l'url de fichier suivante

rrreeeUtilisez l'instruction suivante pour obtenir l'extension du fichier : rrreee

Analyse : Utiliser. str .lastIndexOf(".") peut obtenir la dernière position d'occurrence du caractère "." puis l'utiliser comme premier paramètre de la méthode substr() pour spécifier la position de départ de la chaîne interceptée. . Comme l'extension ".png" comporte quatre caractères, définissez simplement le deuxième paramètre de la méthode substr() sur 4. 🎜🎜Résultat de sortie : 🎜🎜🎜🎜🎜Si vous souhaitez uniquement obtenir "png", vous pouvez ajouter 1 à str.lastIndexOf(".") : 🎜🎜rrreee🎜Résultat de sortie : 🎜🎜🎜🎜🎜C'est Nous savons la longueur de l'extension, mais parfois la longueur de l'extension n'est pas fixe, alors on peut omettre le deuxième paramètre de la méthode substr() et récupérer directement tous les caractères après le caractère "." : 🎜rrreee🎜Résultat de sortie : 🎜 🎜🎜🎜🎜D'accord, c'est tout. Si vous en avez besoin, vous pouvez lire : 🎜Tutoriel avancé Javascript🎜🎜.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn