java regex:查找一个或多个数字后跟一个数字的模式

时间:2012-06-08 16:00:29

标签: java regex

我有一个java正则表达式问题。

如何找到一个或多个数字后跟一个数字的模式。在一个字符串?

5 个答案:

答案 0 :(得分:9)

"^[\\d]+[\\.]$"

^     = start of string
[\\d] = any digit
+     = 1 or more ocurrences
\\.   = escaped dot char
$     = end of string   

答案 1 :(得分:6)

我认为这是你问题的答案:

String searchText = "asdgasdgasdg a121341234.sdg asdg as12..dg a1234.sdg ";
searchText.matches("\\d+\\.[^.]");

这将匹配“121341234”。和“1234”。但不是“12”。

答案 2 :(得分:2)

(\\d)+\\.

\\d表示任何数字
+表示一个或多个

请参阅此http://www.vogella.com/articles/JavaRegularExpressions/article.html

答案 3 :(得分:1)

在正则表达式中,元字符\d用于表示整数但是要在java代码中表示它作为正则表达式,因为对它们执行了双重解析,所以必须使用\\d

首先是一个字符串解析器,它将它转换为\d,然后是正则表达式解析器,它将把它解释为整数元字符(这就是我们想要的)。

对于“一个或多个”部分,我们使用+贪心量词。

由于双解析方案,要表示.我们使用\\.

所以最后我们有(\\d)+(\\.)

答案 4 :(得分:0)

\\d+)\\.

\\d代表数字,+代表一个或多个,\\.代表点数。如果.在没有反斜杠的情况下写入,则匹配任何字符。