Хорошо, я нашел решение сам.
При [class]*
совпадении с нулем или более вхождений это выражение сопоставлялось, когда в имени файла была хотя бы одна (в отличие от ровно одной) точка.
Чтобы он совпадал ровно с одним, необходимо указать положение точки. В моем случае я просто добавил спецификаторы положения «^» (начало строки) и «$» (конец строки), так что теперь регулярное выражение переводится в «Строки с ровно одной точкой где-нибудь между началом и концом строки». линия"
where /r directory *.* | findstr /irc:"^[^\.]*\.[^\.]*$"