簡體   English   中英

javascript字符串:刪除數字和第一個“。”以外的所有字符

[英]javascript string: remove all except numbers and the first “.”

例如:

“ 10.0.cm”轉到“ 10.0”

“ 10.0.m”轉到“ 10.0”

“ 3”保持為“ 3”

等等...

我嘗試了這個:

values[3].replace(/[^0-9.,]+/, '')

但這仍然留下“。” 在數字之后,例如:10.0。

謝謝你的幫助...

 var values = ["10.0.cm", "10.0.m", "3"]; var patten = /\\d+(\\.\\d+)?/g; for (var i = 0; i < values.length; i++) { console.info(values[i].match(patten)); } 

下面的正則表達式應該解決它

values[3].replace(/\.+[a-z]*$/, '')

您描述的問題不是簡單的“在字符串中查找數字”

要一步一步做到這一點並不容易,因為JavaScript中的RegExp不支持回溯。 然而

  • 刪除所有不是數字或的字符非常容易.
  • 字符串中查找特定字符非常容易
  • 構造一個字符串很容易
var str = 'foo_1.0.bar.1.2.xyz';

str = str.replace(/[^\d\.]/g, '').split('.');
str = str[0] ? str[0] + '.' + str.slice(1).join('') : '';

str; // "1.012"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM