十进制的正则表达式后跟字符串

时间:2014-07-29 16:11:08

标签: regex string numbers

我需要一个与以下示例匹配的正则表达式

251.51 Kb
232.113 Mb
35 ss
 325.10323 sd
  23    hhh
33ffg

所以,基本上任何十进制数字后跟1个字母字符串。这些空间被忽略了。

3 个答案:

答案 0 :(得分:2)

你的正则表达式是,

^\s*\d+(?:\.\d+)?\s*[a-zA-Z]+$

DEMO

<强>解释

  • ^断言我们刚开始。
  • \s*匹配零个或多个空格。
  • \d+匹配一个或多个数字。
  • (?:\.\d+)?可选的一个或多个以点开头的数字。
  • \s*匹配零个或多个空格。
  • [a-zA-Z]+匹配一个或多个字母。
  • $行尾。

答案 1 :(得分:0)

试试这个

([0-9]+(\.[0-9]+)?(\s+)?[a-zA-Z])

Demo

答案 2 :(得分:0)

您可以使用:

^\s*((?:\d+\.\d+)|(?:\d+))(?:\Z|\D)

See it work

或者,如果您只想匹配数字,如果后跟字母或空格,则字母:

^\s*((?:\d+\.\d+)|(?:\d+))(?:\s*[a-zA-Z])

See that one