1

好吧,我让它工作了,但不知何故,它看起来很慢而且效率低下(或者可能没有)。

我得到的是一系列字符,为了简单起见,我们就说它是

123456789

我想要做的是确保输入以相同的方式开始,并且是相同的序列,但不需要是完整的序列。

我得到的是这样的:

^1(2(3(4(5(6(7(8(9)?)?)?)?)?)?)?)?

这看起来很可怕,但有没有更好的方法来做到这一点?

编辑添加了^原始代码中的内容,我忘记在此处包含。

4

1 回答 1

1

一个 ?量词就像一个备件。想想没有它运行良好的引擎。如果可能的话,它会尝试忽略它。

确定 x?x?x?x?x? 看起来很糟糕。但是,除非与它周围的某些上下文一起使用,否则它几乎毫无意义。

假设您的分组只是为了表示选项,您可以使用 this 排除最后一个内部组1(2(3(4(5(6(7(89?)?)?)?)?)?)?)?

例子:

1(2(3(4(5(6(7(8(9)?)?)?)?)?)?)?)?将全局匹配这个

987654321 1111111111111112121211112121121212312111 多次。

所以,都是相对的。

于 2012-05-14T17:26:17.137 回答