说我有一个字符串12.13.14
如何在最后一个点之后获取字符。 (在这种情况下是14)?
可以有超过2个字符。
例如:34.45.657
10.11.46256
所以在最后一个点之后可以是任意数量的字符。
我和.slice()搞砸了但是无法到达任何地方。
答案 0 :(得分:3)
你有很多选择。一个是split
和pop
:
var str = "12.13.14";
var last = str.split('.').pop();
document.body.innerHTML = last;

另一个是正则表达式
var str = "12.13.14";
var match = /\.([^.]+)$/.exec(str);
var last = match && match[1];
document.body.innerHTML = last;

或rex并替换:
var str = "12.13.14";
var last = str.replace(/^.*\.([^.]+)$/, "$1");
document.body.innerHTML = last;

或lastIndexOf
和substring
,Ananth shows。
答案 1 :(得分:1)
var str = '34.45.657';
console.log(str.substring(str.lastIndexOf('.') + 1));
答案 2 :(得分:1)
您可以通过多种方式实现这一目标:
第一种方式:
var myString = '12.13.14';
var lastItem = myString.split('.').pop();
console.log(lastItem);
第二种方式:
var myString = '12.13.14';
var lastItem = myString.slice(myString.lastIndexOf('.')+1);
console.log(lastItem);
第三种方式:
var myString = '12.13.14';
var lastItem = myString.substring(myString.lastIndexOf('.') + 1);
console.log(lastItem);
依此类推,......
答案 3 :(得分:0)
一个简单的解决方案是使用带有分隔符的split()
。
您可以在点上拆分字符串,因为split会返回一个数组,您可以使用pop()
来获取最后的结果。
e.g。
'34.345.3456'.split('.').pop(); // 3456
答案 4 :(得分:0)
轻松解决方案,以获得这样的答案
var txt= document.getElementById("Text1").value;
var s1 = txt.lastIndexOf(".");
txt = txt.substring(0, s1);