我需要正则表达式来匹配从数字开始的字符串(数字可以是整数或浮点数)。例如:
100px
100 px
1.0ft
1.0 ft
0.001ft2
0.001 ft2
我是这个东西的新手,有人可以帮助我吗?我已经尝试过类似的东西:
Regex numberBeginRegex = new Regex(@"([\d]+|[\d]+[.][\d]+).");
你可以使用这个正则表达式: -
"(\d+(\.\d+)?).*"
(\d+(\.\d+)?)
- 匹配整数或浮点数。通过使用?
量词,小数部分是可选的,这意味着 -match 0 or 1
实际上,您的正则表达式也可以,但是您忘记将*
量词放在末尾.
:-
"([\d]+|[\d]+[.][\d]+).*" // Note the `*` at the end
你可以使用这个正则表达式
var reg=@"^(\d+(\.\d+)?).*";
List<string> nums=Regex.Matches(inp,reg,RegexOptions.Multiline)
.Cast<Match>()
.Select(x=>x.Value)
.ToList();
如果您想检查它们是否以数字开头,您可以使用它substring()
来获取第一个字符