Regex 后跟字符串的十进制正则表达式
我需要一个匹配以下示例的正则表达式Regex 后跟字符串的十进制正则表达式,regex,string,numbers,Regex,String,Numbers,我需要一个匹配以下示例的正则表达式 251.51 Kb 232.113 Mb 35 ss 325.10323 sd 23 hhh 33ffg 所以,基本上,任何十进制数后跟1个字母字符串。在这2个之间忽略空格。您的正则表达式将是 ^\s*\d+(?:\.\d+)?\s*[a-zA-Z]+$ 说明: ^断言我们处于起点 \s*匹配零个或多个空格 \d+匹配一个或多个数字 (?:\。\d+)可选前面有点的一个或多个数字 \s*匹配零个或多个空格 [a-zA-Z]+匹配一个或多个字
251.51 Kb
232.113 Mb
35 ss
325.10323 sd
23 hhh
33ffg
所以,基本上,任何十进制数后跟1个字母字符串。在这2个之间忽略空格。您的正则表达式将是
^\s*\d+(?:\.\d+)?\s*[a-zA-Z]+$
说明:
断言我们处于起点^
匹配零个或多个空格\s*
匹配一个或多个数字\d+
可选前面有点的一个或多个数字(?:\。\d+)
匹配零个或多个空格\s*
匹配一个或多个字母表[a-zA-Z]+
行尾$
([0-9]+(\.[0-9]+)?(\s+)?[a-zA-Z])
您可以使用:
^\s*((?:\d+\.\d+)|(?:\d+))(?:\Z|\D)
或者,如果您只想匹配一个数字(后跟字母或空格),则字母:
^\s*((?:\d+\.\d+)|(?:\d+))(?:\s*[a-zA-Z])