Far*_*gho -1 javascript typescript
我需要在 javascript 中分割字符串的帮助。
\n\n我有一个带有货币的字符串。该字符串取决于位置。
\n\n例如: “1,99\xe2\x82\xac”或“$1,99”
\n\n我想拆分字符串并从中提取“金额”和“货币”。
\n\n如果失败,我想返回一个空字符串或只是 null。
\n\n有人知道如何解决这个问题吗?
\n您可以尝试使用正则表达式进行匹配和替换
\n\nvar extractMoney = function(string) {\r\n var amount = string.match(/[0-9]+([,.][0-9]+)?/)\r\n var unit = string.replace(/[0-9]+([,.][0-9]+)?/, "")\r\n if (amount && unit) {\r\n return {\r\n amount: +amount[0].replace(",", "."),\r\n currency: unit\r\n }\r\n }\r\n return null;\r\n}\r\n\r\nconsole.log(extractMoney("1,99\xe2\x82\xac"));\r\nconsole.log(extractMoney("$1,99")); \r\nconsole.log(extractMoney("error"));Run Code Online (Sandbox Code Playgroud)\r\n结果
\n\nextractMoney("1,99\xe2\x82\xac"); // => {amount: 1.99, currency: "\xe2\x82\xac"}\nextractMoney("$1,99"); // => {amount: 1.99, currency: "$"}\nextractMoney("error"); // => null\nRun Code Online (Sandbox Code Playgroud)\n