回答
我使用ColdFusion。 [^ \ d。]的效果与eldarerathis上面提到的一样。
<cfset amt = '$1,109,889.23'>
<cfset newAmt = ReReplace(amt, "[^\d.]", "","ALL") >
<cfoutput>#newAmt#</cfoutput>
由于$
是正则表达式中的元字符(意思是“字符串结尾”或“行尾”,取决于当前设置),因此需要将其转义为\$
。但是,如果只有一个固定字符,为什么要使用正则表达式呢?
取决于正则表达式引擎!在JS中`$`的转义是`$$`。 – Rudu 2010-12-03 18:30:56
什么是JS?我从来没有见过任何地方使用过$$。但之后我没有看到一切。 – 2010-12-03 18:33:06
只是做一个搜索并取代,
和$
?
但如果你打算这么做。
[^\d.]+
我知道,我不得不以艰难的方式去做。 – CFNinja 2010-12-03 18:43:45
不要忘记负面... – 2017-04-17 15:51:55
[\d,.]+
会给你的数字部分。 Here是Rubular上的例子。
这项工作适合你吗? ^ \ $
我不确定我是否确切地理解您想要的内容,但在您的示例中,您似乎希望以“1,109,889.23”结尾。如果是这种情况,为什么不简单地选择使用[\d,.\x20]+
(注意句点不会被转义,因为它是在字符集中,并且注意\ x20选择空格,如果它们使用逗号而不是逗号)来选择数。如果您想选择不属于该数字的所有内容,如您的示例所示,那么您只需搜索[^\d,.\x20]
。这将适用于任何货币格式,而不仅仅是使用美元符号的货币格式。它还将允许多种类型的标点符号,例如允许空格而不是逗号分隔多个数字。但是,我同意Tim Pietzcker的观点,即正则表达式可能不适合这项工作。
在Java:
String newString = oldString.replaceAll("$", "");
你不需要这个正则表达式。
只需使用lsParseCurrency
:
numericValue = lsParseCurrency('$1,109,889.23'); writeOutput(numericValue);
1109889.23
按以下Leigh的commment ......要是你的语言环境是什么,不使用,
和.
对于数千和小数分隔符(分别)...确保也指定语言环境,例如:
numericValue = lsParseCurrency('$1,109,889.23', 'en_us');
- 1. 正则表达式 - 删除美元符号从文本输入
- 2. 如何使用正则表达式删除空格Notepad ++?
- 3. Python的正则表达式删除Word用正则表达式
- 4. ANT删除空格正则表达式
- 5. 正则表达式删除空格
- 6. 正则表达式删除空格
- 7. Javascript正则表达式删除空格
- 8. 使用正则表达式删除HTML
- 9. 删除使用正则表达式
- 10. 删除使用正则表达式
- 11. 删除使用正则表达式
- 12. 如何删除infront正则表达式?
- 13. 如何删除与正则表达式
- 14. 使用正则表达式删除货币格式
- 15. php美元金额正则表达式
- 16. 美元和逗号的正则表达式格式
- 17. 删除。*正则表达式打破正则表达式
- 18. Notepad ++正则表达式删除样式
- 19. 使用正则表达式删除表格
- 20. 正则表达式删除除
- 21. 格式ssn使用正则表达式
- 22. 格式使用正则表达式
- 23. 如何删除与正则表达式元素BaseX
- 24. 如何删除符合正则表达式的空格?
- 25. 如何删除此正则表达式输出中的空格?
- 26. 正则表达式:如何删除XML标签风格
- 27. 使用正则表达式删除点删除*太
- 28. 如何删除使用PHP和正则表达式
- 29. 如何在postgres中使用正则表达式删除加号?
- 30. 如何在php中使用正则表达式删除链接?
您正在使用什么语言,你叫什么相关的功能?在某种`replaceAll()`方法中使用它可能会很好(虽然它也会删除小数,所以``[^ \ d。]`可能会更好)。对于这个问题,你是否也试图删除逗号?我从你说的这个话的方式不太确定。 – eldarerathis 2010-12-03 18:29:21
我正在使用ColdFusion。 [^ \ d。]很棒! – CFNinja 2010-12-03 18:40:34