使用Regular Exrepssion查找字符串长度

时间:2015-11-30 06:49:02

标签: java regex string-length

我需要使用正则表达式检查字符串行。

我可以验证行内容,但我无法检查行长度是否确切。

以下是示例: -

system WAS SP2 NA5 na10-xyz cpu,core-2,idle 1360294220 0

对于上面一行,我需要查看 8字符串是否用单个空格分隔。

我设计了正则表达式来检查上面的字符串。

\w+(\s\w+){3}(\s(\w|\W)+){2}\s\d{10}\s\d+

那么我需要添加什么才能检查字符串长度?

这是我到目前为止所看到的。

Regex Java Total String Length

Regex to match words of a certain length

编辑: -

我不想使用split(" ")函数,因为我将使用正则表达式检查超过100万行。因此,如果我可以使用正则表达式合并长度检查,那么在我看来会更好。

编辑2: -

使用我当前的正则表达式,如果有超过8个元素,它将不会抛出错误。像这个例子: -

system WAS aa aa SP2 NA5 na10-xyz cpu,core-2,idle 1360294220 0

这里aa aa是我添加的额外字符串,它不会抛出当前正则表达式的错误。

1 个答案:

答案 0 :(得分:0)

这很简单,如果最后的空白并不重要,那么正则表达式会匹配:

^([^ ]+ ){8}$

如果确实如此:

^([^ ]+ ){7}[^ ]+$

([^ ]) =除了空白之外的任何东西

([^ ]+) =一个不包含任何空格的单词

([^ ]+ ) =一个单词后面跟一个空格

([^ ]+ ){7} =每个7个单词后跟一个空格