如何获取字符串的最后一个字符

2020/09/21 08:31 · javascript ·  · 0评论

我有

var id="ctl03_Tabs1";

使用JavaScript,如何获得最后五个字符或最后一个字符?

编辑:正如其他人指出的那样,请使用slice(-5)代替substr但是,请参阅.split().pop()此答案底部解决方案以了解其他方法。

原始答案:

您将需要结合使用Javascript字符串方法.substr().length属性。

var id = "ctl03_Tabs1";
var lastFive = id.substr(id.length - 5); // => "Tabs1"
var lastChar = id.substr(id.length - 1); // => "1"

这将获得从id.length-5开始的字符,并且由于省略了.substr()的第二个参数,因此将继续到字符串的末尾。

您也可以使用.slice()下面其他人指出方法。

如果您只是想在下划线后找到字符,则可以使用以下命令:

var tabId = id.split("_").pop(); // => "Tabs1"

这会将字符串分割为下划线的一个数组,然后将弹出的最后一个元素“弹出”该数组(即您想要的字符串)。

不要使用.substr()请使用此.slice()方法,因为它与跨浏览器兼容(请参阅IE)。

const id = "ctl03_Tabs1";
console.log(id.slice(id.length - 5)); //Outputs: Tabs1
console.log(id.slice(id.length - 1)); //Outputs: 1

具有负值的substr()在IE中不起作用

您可以在起始位置为负的情况下使用substr()方法来检索最后n个字符。例如,获得最后5个:

var lastFiveChars = id.substr(-5);

获取最后一个字符很容易,因为您可以将字符串视为数组:

var lastChar = id[id.length - 1];

要获取字符串的一部分,可以使用substr函数或substring函数:

id.substr(id.length - 1); //get the last character
id.substr(2);             //get the characters from the 3rd character on
id.substr(2, 1);          //get the 3rd character
id.substr(2, 2);          //get the 3rd and 4th characters

substr之间的区别substring是如何处理第二个(可选)参数。在中substr,它是索引中的字符数(第一个参数)。在中substring,它是字符切片应在何处结束的索引。

以下脚本显示使用JavaScript在字符串中获取最后5个字符和最后1个字符的结果:

var testword='ctl03_Tabs1';
var last5=testword.substr(-5); //Get 5 characters
var last1=testword.substr(-1); //Get 1 character

输出:

Tabs1 //有5个字符

1 //得到了1个字符

查看substring函数

要获取最后一个字符:

id.substring(id.length - 1, id.length);

无需使用substr方法来获取字符串的单个字符!

以Jamon Holmgren为例,我们可以更改substr方法并只需指定数组位置:

var id = "ctl03_Tabs1";
var lastChar = id[id.length - 1]; // => "1"

一种方法是使用slice,例如:

var id="ctl03_Tabs1";
var temp=id.slice(-5);

所以的价值temp"Tabs1"

Substr函数允许您使用减号来获取最后一个字符。

var string = "hello";
var last = string.substr(-1);

非常灵活。例如:

// Get 2 characters, 1 character from end
// The first part says how many characters
// to go back and the second says how many
// to go forward. If you don't say how many
// to go forward it will include everything
var string = "hello!";
var lasttwo = string.substr(-3,2);
// = "lo"

如果您只希望最后一个字符或任何已知位置的字符,则可以简单地将字符串作为数组处理!-字符串在javascript中是可迭代的-

Var x = "hello_world";
 x[0];                    //h
 x[x.length-1];   //d

但是,如果您只需要一个字符,那么使用拼接是有效的

x.slice(-5);      //world

关于你的例子

"rating_element-<?php echo $id?>"

要提取ID,您可以轻松使用split + pop

Id= inputId.split('rating_element-')[1];

这将返回ID,如果在rating_element之后没有ID,则返回undefined :)

假设您将子字符串与另一个字符串的末尾进行比较,并将结果用作布尔值,则可以扩展String类以实现此目的:

String.prototype.endsWith = function (substring) {
  if(substring.length > this.length) return false;
  return this.substr(this.length - substring.length) === substring;
};

允许您执行以下操作:

var aSentenceToPonder = "This sentence ends with toad"; 
var frogString = "frog";
var toadString = "toad";
aSentenceToPonder.endsWith(frogString) // false
aSentenceToPonder.endsWith(toadString) // true
var id="ctl03_Tabs1";
var res = id.charAt(id.length-1);

我发现了这个问题,并通过一些研究发现这是获得最后角色的最简单方法。

正如其他人提到的那样,为了完整起见,添加了最后5个:

var last5 = id.substr(-5);

要获取字符串的最后一个字符,可以使用该split('').pop()函数。

const myText = "The last character is J";
const lastCharater = myText.split('').pop();
console.log(lastCharater); // J

之所以起作用,是因为当split('')函数将empty('')作为参数时,字符串的每个字符都会更改为数组的元素。因此,我们可以使用该pop()函数返回该数组的最后一个元素,即'J'字符。

如果它是字符串中的最后一个字符,则它将删除逗号。

var str = $("#ControlId").val();

if(str.substring(str.length-1)==',') {

  var stringWithoutLastComma = str.substring(0,str.length-1);    

}

我实际上有以下问题,这是我如何通过上述答案解决的方法,但提取ID的不同方法是形成输入元素。

我已将输入附加到

id="rating_element-<?php echo $id?>"

并且,当单击该按钮时,我只想提取id(即数字)或php ID ($ id)

所以我在这里做什么。

 $('.rating').on('rating.change', function() {
            alert($(this).val());
           // console.log(this.id);
           var static_id_text=("rating_element-").length;       
           var product_id =  this.id.slice(static_id_text);       //get the length in order to deduct from the whole string    
          console.log(product_id );//outputs the last id appended
        });

最后5个

var id="ctl03_Tabs1";
var res = id.charAt(id.length-5)
alert(res);

持续

   
 var id="ctl03_Tabs1";
 var res = id.charAt(id.length-1)
alert(res);

我相信这会奏效。

var string1="myfile.pdf"
var esxtenion=string1.substr(string1.length-4)

的值extension将是".pdf"

这里有两个例子,总是显示最后一个字符

let randomWord = "Araponga";

console.log(randomWord.charAt(randomWord.length - 1)); 

console.log(randomWord[randomWord.length - 1]); 
本文地址:http://javascript.askforanswer.com/ruhehuoquzifuchuandezuihouyigezifu.html
文章标签:
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!