Regex 什么是+;表示[^SPEAK]+;用正则表达式?
我发现学习RegEx几乎是不可能的,因为每一个工具或帮助站点都提供了最糟糕的解释,并且没有涵盖所有内容。我正在尝试解决regexcrossword.com上的难题,但它们并没有提供实质性的帮助和/或见解。这引起了混乱 以下是我的理解:Regex 什么是+;表示[^SPEAK]+;用正则表达式?,regex,Regex,我发现学习RegEx几乎是不可能的,因为每一个工具或帮助站点都提供了最糟糕的解释,并且没有涵盖所有内容。我正在尝试解决regexcrossword.com上的难题,但它们并没有提供实质性的帮助和/或见解。这引起了混乱 以下是我的理解: [^SPEAK]=不是S、P、E、A、K +=匹配前面的一个或多个字符 因此[^SPEAK]+=无 我不明白这是怎么回事。我错过了什么 [^SPEAK]匹配不是这5个字母之一的任何字符+表示至少匹配前面的模式1次。因此,[^SPEAK]+匹配不在该集中的字符序列
我不明白这是怎么回事。我错过了什么
[^SPEAK]
匹配不是这5个字母之一的任何字符<代码>+表示至少匹配前面的模式1次。因此,[^SPEAK]+
匹配不在该集中的字符序列
例如,如果输入是
123ABCDEFG
,它将匹配123
,BCD
和FG
,[^SPEAK]表示除S、p、E、A、K之外的任何字符,+表示一次或多次
因此,它将接受一次或多次使用的任何不在列表中的字符[SPEAK]
SSSS为有效字符串aaaa为有效字符串SA为无效字符串
regex101.com很好地解释了regexp。一个或多个字符不是S、P、E、a或K。Ex:FOO会匹配,因为它不包含任何这些字母。你哪里糊涂了?我不懂这里的逻辑。如果前面的模式是不允许的,那么如何匹配该模式呢?
G
匹配该模式[^SPEAK]
,因为它不是这些字符中的一个。而FG
是一行中与该模式匹配的两个字符的序列,因此,它们与+
组合在一起。您是否尝试在regular-expressions.infoyes上阅读本教程。他们的书页文字太多,让我头晕目眩。大多数时候,我在那个网站或其他网站上找不到我想要的东西,所以我来这里问问题。