線上書籍

Home

雲端工具入門

詢問 Chat GPT 

  1. 「2罐藍莓果醬 $750」=> 750

"2罐藍莓果醬 $750" 如何從段文字,提取 750呢?

您可以使用正則表達式來從文本中提取價格。假設價格都是以美元符號($)開頭,後面是一個數字(可能包括小數點),則可以使用以下正則表達式:
 

var text = "2罐藍莓果醬 $750"; var priceRegex = /\$([\d,]+(?:\.\d{1,2})?)/; // 匹配 $ 符號後面的數字(可能包含逗號和小數點) var match = text.match(priceRegex); var price = match ? match[1] : null; console.log(price); // 將打印出 750

這段代碼將從文本中提取價格,並將其存儲在 price 變數中。如果文本中包含多個價格,這個正則表達式將提取第一個價格。如果您需要提取所有的價格,可以將正則表達式與 g 修飾符一起使用,例如:

var text = "2罐藍莓果醬 $750, 3包巧克力 $1200"; var priceRegex = /\$([\d,]+(?:\.\d{1,2})?)/g; // 匹配所有的價格 var prices = []; var match; while (match = priceRegex.exec(text)) { prices.push(match[1]); } console.log(prices); // 將打印出 ["750", "1200"]

這樣, prices 數組將包含文本中的所有價格。

 

如果文本只會有一個價格呢?

如果您確定文本只會包含一個價格,您可以使用 match 方法直接從正文中提取價格,而不需要循環。以下是一個示例:

var text = "2罐藍莓果醬 $750"; var priceRegex = /\$([\d,]+(?:\.\d{1,2})?)/; // 匹配 $ 符號後面的數字(可能包含逗號和小數點) var match = text.match(priceRegex); var price = match ? match[1] : null; console.log(price); // 將打印出 750

這段代碼將從文本中提取價格,並將其存儲在 price 變數中。如果文本中只包含一個價格,這個正則表達式將提取這個價格。

.videobox { position: relative; width: 100%; height: 0; padding-bottom: 56.25%; } .videobox iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

Youtube影片:https://youtu.be/ZqFnexwxO4c