簡體   English   中英

使用正則表達式拆分 javascript 中的字符串

[英]Using regex to split string in javascript

我想拆分我的字符串,以使“Hello the cost 12.50 Hello this item is 7.30”將變為 [“Hello the cost is 12.50”,“Hello this item is 7.30”]。 我首先在字符串中找到與 12.50 和 7.30(浮點數)匹配的內容,但似乎無法弄清楚如何將其拆分為該數字。

使用正則表達式模式(.*? \d+(?:\.\d+)?)\s* ,並找到所有匹配項:

 var re = /(.*? \d+(?:\.\d+)?)\s*/g; var s = 'Hello the cost 12.50 Hello this item is 7.30'; var m; do { m = re.exec(s); if (m) { console.log(m[1]); } } while (m);

這可能是您正在尋找的 RegExp:

'The price is 9.50. Another price is 22.74'.match(/(?=^|\.\s)\D+\d+(\.\d+)?(?=.|$)/gmu)

這告訴 JS RegExp 引擎:

親愛的引擎,

請找到直接以字符串開頭或點和空格開頭的內容,而不將其包含在結果中。

之后應該有一個或多個非數字。

然后應該有一個或多個數字,后面可能跟一個點和一個或多個數字。

最后,所有這些都應該位於字符串結尾或點之前。 請不要在結果中包含任何內容。

在多行模式下全局搜索此模式並注意搜索字符串中是否存在任何 unicode 字符。

暫無
暫無

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

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