Regex 如何在Google Sheets中使用从0到特定数字的区间量词正则表达式?

Regex 如何在Google Sheets中使用从0到特定数字的区间量词正则表达式?,regex,google-sheets,google-sheets-formula,Regex,Google Sheets,Google Sheets Formula,我试图解决这个问题: 如何在REGEXMATCH Google Sheets公式中使用区间量词curlybraces“{}”从0到4,使其仅匹配0到4的出现次数,而不匹配更多 在这里,我首先从源代码和上下文开始(小节量词-*+?和{}) 指定以下内容: a(bc){2,5} matches a string that has a followed by 2 up to 5 copies of the sequence bc 我的公式是: =REGEXMATCH($A7,“a(bc){0,4}

我试图解决这个问题:

如何在REGEXMATCH Google Sheets公式中使用区间量词curlybraces“
{}
”从
0
4
,使其仅匹配
0
4
的出现次数,而不匹配更多

在这里,我首先从源代码和上下文开始(小节
量词-*+?和{}

指定以下内容:

a(bc){2,5}  matches a string that has a followed by 2 up to 5 copies of the sequence bc
我的公式是:

=REGEXMATCH($A7,“a(bc){0,4}”)

这里是A7中的第一个
输入

abcbc

与预期相反,它返回
TRUE
,尽管
A7
中有超过4个
bc
作为输入

以下时间间隔
{1,4}
{2,4}
中出现了与预期相反的结果:

=REGEXMATCH($A7,“a(bc){1,4}”)

=REGEXMATCH($A7,“a(bc){2,4}”)

尽管在后两种情况下出现了5次
bc
序列,它仍然返回匹配

这张纸:

我在这里阅读了一般正则表达式信息的答案,但找不到解决方案

对于
A7
中超过4个
bc
的任何输入,如何使其返回
FALSE


非常感谢你的帮助

默认情况下,正则表达式不必匹配要检查的整个字符串。如果正则表达式与所提供字符串的任何子字符串匹配,则函数将返回
True

要更改该行为,请添加字符
^
以匹配主题字符串的开头,并添加字符
$
以匹配其结尾


例如:
=REGEXMATCH($A7,“^a(bc){0,4}$”)
将不匹配
abcbc

默认情况下,正则表达式不必匹配正在检查它的整个字符串。如果正则表达式与所提供字符串的任何子字符串匹配,则函数将返回
True

要更改该行为,请添加字符
^
以匹配主题字符串的开头,并添加字符
$
以匹配其结尾


例如:
=REGEXMATCH($A7,“^a(bc){0,4}$”)
将不匹配
abcbc

尝试使用锚定
^a(bc){2,4}$
谢谢@The third bird。它起作用了!当心!尝试使用锚定
^a(bc){2,4}$
谢谢@第四只鸟。它起作用了!当心!感谢@theblackips的解释,这很有意义,而且效果很好!当心!感谢@theblackips的解释,这很有意义,而且效果很好!当心!