我使用(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*)
公式搜索行。 (9个字符)
但搜索10个字符或更多字符不起作用:(
知道为什么不能搜索?
答案 0 :(得分:1)
我在Notepad ++中输入了行1;2;3;4;5;6;7;8;9;0;q;w;e;r;t;y;u;i;o;p
并尝试了以下搜索:
(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*)
(9组):匹配。(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);.*
(最后一组没有括号的10组):匹配。(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*)
(10组):不匹配。 Notepad ++告诉我它找不到文本,虽然文字很清楚。我猜这是因为Notepad ++在替换字符串中不支持超过9个反向引用(\1
到\9
),所以它不会让你再有了超过9个括号组。 (但我很难找到任何文件来支持我的主张。)
如果您不需要匹配的值(例如,您没有替换文本),那么您可以随时删除括号,如上面的第二个示例所示。
我只能猜测为什么不允许10个或更多反向引用的可能原因:\10
代表什么?它应该是第10个反向引用,还是第一个反向引用后跟0
?