我有一个字符串,如下所示.
,liger, unicorn, snipe,
Run Code Online (Sandbox Code Playgroud)
如何在javascript中修剪前导和尾随逗号?
cob*_*bal 141
因为我相信一切都可以用正则表达式来解决:
var str = ",liger, unicorn, snipe,"
var trim = str.replace(/(^,)|(,$)/g, "")
// trim now equals 'liger, unicorn, snipe'
Run Code Online (Sandbox Code Playgroud)
eye*_*ess 35
虽然cobbal的答案是"最好的",但在我看来,我想添加一个注释:根据字符串的格式以及剥离前导和尾随逗号的目的,您可能还需要注意空格.
var str = ',liger, unicorn, snipe,';
var trim = str.replace(/(^\s*,)|(,\s*$)/g, '');
Run Code Online (Sandbox Code Playgroud)
当然,对于这个应用程序,使用正则表达式而不是基本字符串方法的价值更为明显.
her*_*ist 22
如果要确保没有任何尾随逗号或空格,可能需要使用此正则表达式.
var str = ' , , , foo, bar, ';
str = str.replace(/(^[,\s]+)|([,\s]+$)/g, '');
Run Code Online (Sandbox Code Playgroud)
回报
"foo, bar"
Run Code Online (Sandbox Code Playgroud)
pax*_*blo 17
尝试这一点,因为RE 并不是所有东西都可以解决,甚至可以,不应该是:-)
<script type="text/javascript">
var str = ",liger, unicorn, snipe,";
if (str.substr(0,1) == ",") {
str = str.substring(1);
}
var len = str.length;
if (str.substr(len-1,1) == ",") {
str = str.substring(0,len-1);
}
alert (str);
</script>
Run Code Online (Sandbox Code Playgroud)
小智 7
在 ECMAScript 5 及更高版本中,您现在可以执行单行
',liger, unicorn, snipe,'.split(',').map(e => e.trim()).filter(e => e).join(', ')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
59197 次 |
| 最近记录: |