Regex 如何编写正则表达式来匹配重复字符串并指定重复数?
例如,我想匹配文本文件中的字符串“abcabc”,其中两个(并且只有两个)“abc”连接在一起,并且“abcabc”的前面和结尾没有字符 如果我使用grep-n'(abc){2}测试,它不起作用Regex 如何编写正则表达式来匹配重复字符串并指定重复数?,regex,Regex,例如,我想匹配文本文件中的字符串“abcabc”,其中两个(并且只有两个)“abc”连接在一起,并且“abcabc”的前面和结尾没有字符 如果我使用grep-n'(abc){2}测试,它不起作用 grep -n '\(abc\)\{2\}' TEST 如您的描述所示,如果您想在一行中单独匹配字符串abcabc,请使用: grep -n '^\(abc\)\{2\}$' TEST 逃避父母的约束: grep -n '\(abc\)\{2\}' TEST 如您的描述所示,如果您想在一行中单独匹
grep -n '\(abc\)\{2\}' TEST
如您的描述所示,如果您想在一行中单独匹配字符串abcabc
,请使用:
grep -n '^\(abc\)\{2\}$' TEST
逃避父母的约束:
grep -n '\(abc\)\{2\}' TEST
如您的描述所示,如果您想在一行中单独匹配字符串abcabc
,请使用:
grep -n '^\(abc\)\{2\}$' TEST
这是最短的选择:
^abcabc$
这是最短的选择:
^abcabc$
尝试:
尝试:
检查这个是否合适
$ grep '\<abcabc\>'
test
abcabc
abcabc
test abcabc
test abcabc
testabcabc
$grep'\'
测试
abcabc
abcabc
测试abcabc
测试abcabc
测试ABC
检查这是否合适
$ grep '\<abcabc\>'
test
abcabc
abcabc
test abcabc
test abcabc
testabcabc
$grep'\'
测试
abcabc
abcabc
测试abcabc
测试abcabc
测试ABC
谢谢各位,从你们的回答中,我想我已经得到了我所需要的
正如我在问题中所说的,我想匹配“abcabc
”,其中2个字符并且只重复“abc
”,前面和后面没有其他字符,但“abcabc
”不是该行中的唯一字符串
因此,答案是:
grep -n "\b\\(abc\\)\\{2\\}\b" filename
谢谢各位,从你们的回答中,我想我已经得到了我所需要的 正如我在问题中所说的,我想匹配“
abcabc
”,其中2个字符并且只重复“abc
”,前面和后面没有其他字符,但“abcabc
”不是该行中的唯一字符串
因此,答案是:
grep -n "\b\\(abc\\)\\{2\\}\b" filename
只有当这是行中唯一的字符串时,这才匹配,这取决于“abcabc”前面和结尾没有字符”的含义。布拉姆,同意!依我看,如果Allen想匹配“字符串'abcabc'…并且前面和后面都没有字符”,那应该是文件中唯一的东西,因为一个文件等于一个字符串(我知道,我的答案不是这样的)。这只匹配行中唯一的字符串,这有点取决于“abcabc”前面和结尾没有角色”的意思。布拉姆,同意!依我看,如果Allen想匹配“字符串‘abcabc’……并且前面和后面都没有字符”,那应该是文件中唯一的内容,因为一个文件等于一个字符串(我知道,我的答案不是这样的)。