从最后一个逗号字符串中删除所有字符起
说我有一个字符串,它看起来像这样:从最后一个逗号字符串中删除所有字符起
'Welcome, your bed is made, your tea is ready.'
使用jQuery,我怎么可以删除所有字符的最后一个逗号,包括最后一个逗号本身后因此该字符串显示为:
'Welcome, your bed is made' // all characters after last comma are removed
只需阅读,直到最后,
:
str = str.substr(0, str.lastIndexOf(","));
可以使用的.split()
组合.slice()
var str = 'Welcome, your bed is made, your tea is ready.';
var arr = str.split(',');
arr = arr.splice(0, arr.length - 1)
alert(arr.join(','))
您可以使用字符串的replace()
方法具有以下的正则表达式:
var str = 'Welcome, your bed is made, your tea is ready.'
str = str.replace(/,([^,]*)$/, '');
$('#result').text(str);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<p id="result"></p>
小心解释downvote?如果你运行的代码片段,这完美的作品... – 2014-10-20 11:29:10
基本上,这:http://jsperf.com/regex-vs-lastindexof-1 不要使用正则表达式进行简单的字符串操作。 – Cerbrus 2014-10-20 11:38:34
@Cerbrus除非你以60fps运行游戏,否则这里的差异可以忽略不计。 – 2014-10-20 11:53:44
这里是你的jQuery代码
<script type="text/javascript">
$(document).ready(function(){
var str = 'Welcome, your bed is made, your tea is ready.';
var n = str.lastIndexOf(",");
var str1 = str.slice(0,n);
});
str1有最终的字符串。 – Robin 2014-10-20 11:40:07
是的,你不需要jQuery来做字符串操作。 – Cerbrus 2014-10-20 11:27:06
出于某种原因,我的工作答案([这里](http://*.com/a/26464445/1317805))已被低估。我在这里提到这一点,以防你看到它,并认为它不起作用,因为downvote - 如代码片段证明的,它工作正常。这似乎只是一个随机downvote没有特别的原因相关的答案。 – 2014-10-20 11:34:18