我想匹配double[M|B]
成双部分和alpha部分。例如,47.5B
或350M
。正则表达式打破字符串转换成浮动/阿尔法部分
这不起作用:使用lookarounds
var numAlpha = new Regex("(<Numeric>^[0-9]*?:\\.[0-9]*)(<Alpha>[a-zA-Z]+)");
var match = numAlpha.Match("1.65B");
var number = match.Groups["Numeric"].Value;
var alpha = match.Groups["Alpha"].Value;
第一:命名组的语法是错误的。第二:你的数字正则表达式意志----它---:尝试:['( \ d +(?:??\ \ d +))(? [A-ZA-Z] +)']( http://regexstorm.net/tester?p=%28%3f%3cNumeric%3e%5cd%2b%28%3f%3a%5c.%5cd%2b%29%3f%29%28%3f%3cAlpha% 3E%5BA-ZA-Z%5D%2B%29&I =%出资16.5亿0D%0a350M) –