CMD/BAT - [решено] Поиск слов по маске
-
megaloman
Re: CMD/BAT - [решено] Поиск слов по маске
ateka, а запустите-ка интерпретатор команд "%comspec%" /k и выполните в нём команду chcp — что покажет?
- Вложения
-
- vocabulary.rar
- (112.87 КБ) 0 скачиваний
- vocabulary.rar
- (112.87 КБ) 0 скачиваний
-
DJ Mogarych
Re: CMD/BAT - [решено] Поиск слов по маске
Iska, 65001
Но принудительная смена кодировки результата не даёт.
В 866 принципиально не ищет.
Но принудительная смена кодировки результата не даёт.
В 866 принципиально не ищет.
-
ateka
Re: CMD/BAT - [решено] Поиск слов по маске
Цитата ateka:
Iska, 65001
.
Цитата ateka:
Но принудительная смена кодировки
Как это выглядит — «принудительная смена кодировки»?
Iska, 65001
CMD/BAT - [решено] Поиск слов по маске
.Цитата ateka:
Но принудительная смена кодировки
CMD/BAT - [решено] Поиск слов по маске
Как это выглядит — «принудительная смена кодировки»?
-
Iska
Re: CMD/BAT - [решено] Поиск слов по маске
Iska, 65001
Но принудительная смена кодировки результата не даёт.
В 866 принципиально не ищет.
Но принудительная смена кодировки результата не даёт.
В 866 принципиально не ищет.
-
ateka
Re: CMD/BAT - [решено] Поиск слов по маске
ateka, при этом кодировка самого пакетного файла также OEM/866?
-
ateka
Re: CMD/BAT - [решено] Поиск слов по маске
ateka,
Цитата Iska:
ateka, при этом кодировка самого пакетного файла также OEM/866?
Цитата Iska:
ateka, при этом кодировка самого пакетного файла также OEM/866?
CMD/BAT - [решено] Поиск слов по маске
Распакуйте мой архив из предыдущего поста
со словарем и батником, возьмите прикреплённый файл в этом посте, поместите его рядом с распакованным vocabulary.txt, переименуйте его из txt в bat, ничего больше не изменяйте. Запустите именно его. И?-
Iska
Re: CMD/BAT - [решено] Поиск слов по маске
Цитата Iska:
при этом кодировка самого пакетного файла также OEM/866?
Ага.
Цитата megaloman:
Запустите именно его. И?
Не ищет. Даже русские буквы в 866 не отображает.
Картинка
[spoiler]
[/spoiler]
при этом кодировка самого пакетного файла также OEM/866?
CMD/BAT - [решено] Поиск слов по маске
Ага.
Цитата megaloman:
Запустите именно его. И?
CMD/BAT - [решено] Поиск слов по маске
Не ищет. Даже русские буквы в 866 не отображает.
Картинка
[spoiler]
[/spoiler]-
megaloman
-
ateka
Re: CMD/BAT - [решено] Поиск слов по маске
alpap, Батники в 866. Гарантированно. Оболочка по умолчанию в 65001. Никак 2020 на дворе.
-
alpap
Re: CMD/BAT - [решено] Поиск слов по маске
ateka,
Попробуйте VBS.
[spoiler]Код: [/spoiler]
Интересно, сработает? Скрипт сохранить в 1251-кодировке. Словарь - в UTF-8. Прилагаю и то и другое в архиве
А вообще-то нестандартные настройки рано или поздно выходят боком
Попробуйте VBS.
[spoiler]Код: [/spoiler]
Код: Выделить всё
'FileIn = "D:\CMD_Forum\Box_In\vocabularyUTF8.txt"
FileIn = "vocabularyUTF8.txt"
nword = 3
On Error Resume Next
With CreateObject("ADODB.Stream")
.Charset = "utf-8"
.Open
.LoadFromFile (FileIn)
If Err.Number 0 Then
MsgBox "File " + FileIn + vbCrLf + Err.Description + "(" + CStr(Err.Number) + ")"
WScript.Quit 2
End If
On Error GoTo 0
Alls = Split(.ReadText(), vbCrLf)
.Close
End With
On Error GoTo 0
With CreateObject("VBScript.RegExp")
.IgnoreCase = True
.Global = True
Mask = ""
Do
Mask = InputBox("Маска содержит русские буквы и точки, например" + vbCrLf + ".и...ц", "Поиск слов по маске", Mask)
If Mask = "" Then Exit Do
.Pattern = "^" + Trim(Mask) + "$"
out = ""
i = 0
For Each word In Alls
word = Trim(word)
If .Test(word) Then
If i = 0 Then out = out + word Else out = out + vbTab + word
i = i + 1
If i = 3 Then
i = 0
out = out + vbCrLf
End If
End If
Next
If out = "" Then
R = MsgBox("По маске " + """" + Mask + """" + vbCrLf + "Ничего не найдено", vbRetryCancel)
Else
R = MsgBox(out, vbRetryCancel, "Маска " + """^" + Trim(Mask) + "$"". Найдено:")
End If
If R = 2 Then Exit Do
Loop
End WithИнтересно, сработает? Скрипт сохранить в 1251-кодировке. Словарь - в UTF-8. Прилагаю и то и другое в архиве
А вообще-то нестандартные настройки рано или поздно выходят боком