字符串示例:“ ttttar”,“ bbbb abbb”,“ cccacc bbb”

我想分别使用表达式[^ \\ w] +提取“ tttt”,“ bbbb”和“ ccc”

我肯定知道^ \\ w会产生每个字符串的第一个字符。因此,对于第一个字符串,结果表达式不应该是[t] +,并因此计算为“ tttt”吗?

最佳答案

首先,将^放在错误的位置。您已将其放在[]内,这意味着完全不同。 [^]表示反向字符类,因此它匹配不在字符类中的任何字符。您应该将其放在[]之外。

另一件事是,您似乎想连续匹配同一字符,因为您不能只使用简单的字符类。您需要反向参考。不幸的是,正则表达式无法按照您描述的方式工作。

^(\w)\1*


请注意,我将\w放入了一个组,特别是第1组。而且我只匹配了一次。然后,匹配\1,表示“第1组包含的内容”。

10-07 13:19
查看更多