正则表达式嵌套星号

时间:2012-07-06 23:18:14

标签: regex

我在一个正在研究的旧系统中找到了这个正则表达式。

(\s*)*

我很确定最后额外的“*”是多余的,但我想确保在删除之前没有做任何事情。 如果用作参数的字符串有25个以上的空格,那么当它在regex.matches()方法中用于挂起整个系统的点时会导致性能问题

有人知道该特定语法是否具有特殊功能吗?

Ps:它是一个非常庞大的系统,所以我无法测试每个可能的场景

2 个答案:

答案 0 :(得分:1)

这是多余的。您可以使用多个匹配来捕获0个或更多个空格组,这是额外的星号指定的内容。

答案 1 :(得分:1)

假设内部*贪婪,那么,是的,我认为外部是冗余的。外部*尝试重复子匹配,但只有一个子匹配实例,因为它是贪婪的。