需求:匹配整数、小数及千分位格式数值+EUR的正则表达式
匹配目标字符串的正则表达式方案
目标匹配字符串
-5,84;;EUR2.764,90;EUR-47;;EUR
最终正则表达式
-?\d+(?:\.\d+)?(?:,\d+)?;{1,2}\s*EUR
正则各部分解析
-?:匹配可选的负号\d+(?:\.\d+)?:匹配整数部分,支持纯数字(如47)或带千分位点的数字(如2.764),(?:...)为非捕获组,仅用于分组逻辑不保存匹配结果(?:,\d+)?:匹配可选的小数部分(如,84、,90);{1,2}:匹配1到2个分号\s*:匹配可选的空白字符EUR:匹配结尾的固定字符串
验证说明
该正则可同时匹配所有目标字符串:
- 匹配
-5,84;;EUR:负号+整数5+小数,84+两个分号+EUR - 匹配
2.764,90;EUR:整数2.764+小数,90+一个分号+EUR - 匹配
-47;;EUR:负号+整数47+无小数部分+两个分号+EUR
内容的提问来源于stack exchange,提问作者PingPong
相关产品推荐
相关产品推荐

