2013-04-06 79 views
0

我怎么能在JavaScript/jQuery的修剪此字符串如何修剪此JavaScript字符串?

   £ 0.00    

它左右空格,我可以简单地修剪()函数中删除,但我想删除此£并获得0.00的值。

+1

对于需要操纵的值,最好不要将货币符号与值相同的字符串中。例如,如果您正在读取从DOM返回的值,则将符号和值分别保存在不同的跨度中......'£ 0.00'。因此,你可以简单地回到一个数字,例如Number($(“#whatever”)。text())'。 – 2013-04-06 10:23:04

+0

可能的重复[如何修剪JavaScript中的字符串?](http://stackoverflow.com/questions/498970/how-do-i-trim-a-string-in-javascript) – akond 2013-04-07 04:27:14

回答

2

它总是一个英镑符号吗?只需更换它。

val = val.replace('£', ''); // then trim 
3

如果你要替换除了数字和时间的字符串中的所有字符简单地使用正则表达式:

str = str.replace(/[^\d\.]/ig,""); 

/[^\d\.]/比赛不是数字或.所有字符。

1

你可以得到通过使用一个子和的indexOf功能

str = str.substring(str.indexOf(" ")); 
2

VAR海峡;

str = str.trim();

OR

if (!String.prototype.trim) { 

String.prototype.trim = function() { 

    return this.replace(/^\s+|\s+$/g,''); 

} 

} 

OR

STR = str.replace(/^\ S + | \ S + $ /克, '')

+0

为我工作:) – 2015-11-25 04:49:38

1

尝试此

string.replace(/[^\d+(\.\d+)]?/g, '') 
1

假设类似于:

var str = "    £ 0.00    "; 

你刚才写你的“自定义”修剪:

var number = str.replace(/^\D+|\D+$/g,""); 

它基本上由左,右任何修剪是不是一个数字,它停止时,它发现了一些。请注意,您仍然有一个字符串,如果你需要一个真正的号码,你有使用一元运算符(或parseFloat):

var number = +str.replace(/^\D+|\D+$/g,""); 

注意的情况下,取得的字符串是不是有效的数字,你将有NaN结果。