Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/77: Рейтинг темы: голосов - 77, средняя оценка - 4.52
0 / 0 / 0
Регистрация: 17.01.2013
Сообщений: 8
1

Сравнение значений двух переменных без учёта регистра

17.01.2013, 10:57. Показов 15216. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, форумчане.
Нигде не нашел решение простой задачи.
Есть две переменные значения которых периодически совпадают, но в переменных могут быть символы разного регистра. Как можно подвести значение переменной к одному регистру (неважно нижнему или верхнему)?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2013, 10:57
Ответы с готовыми решениями:

Получение первых строк двух файлов в переменные и сравнение значений этих переменных
Приветствую... Народ прошу помогите написать бат программу...я бы и сам написал, но знаю только...

Сравнение двух std::string на совпадение без учёта регистра
Нужно сравнить две строки на одинаковость, но без учёта регистра. Чтобы name и Name и NaME...

Сравнение строк без учёта регистра
Доброго времени суток. Функция strcmp сравнивает 2 строки с учётом регистра, а как можно сравнить...

String, сравнение без учёта регистра
Как сравнить: string name1,name2;,без учета регистра. То есть когда name1="QWE";name2="Qwe"-прада...

3
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
17.01.2013, 22:31 2
Хороший вопрос.
Нужно писать свою функцию.
Но если дальнейшей задачей является сравнение значений этих переменных между собой без учета регистра,
задача решается совсем просто - добавим ключ /i к команде if

Bash
1
2
3
set a=test
set b=TEST
if /i %a%==%b% echo OK
...
Вот, что у меня получилось
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
@echo off
Setlocal EnableDelayedExpansion
 
set Utext= Up case text--~@#*()_+-
Call :Case Utext U
echo %Utext%
 
set Ltext=lAW CASE TEXT--~@#*()_+-
Call :Case Ltext L
echo %Ltext%
 
pause
Goto :eof
 
:Case %1-var %2.option-L-or-U
if not Defined CaseA Call :FillSlovar
set word=!%~1!
if not Defined word Exit /B
set tempvar=
set /A n=-1
:newsymbol
set /A n+=1
set "symb=!word:~%n%,1!"
if "%symb%"=="" (Set "%~1=%tempvar%"& Exit /B)
if "!case%~2%symb%!"=="" (
  set "tempvar=%tempvar%%symb%"
) else (
  set "tempvar=%tempvar%!case%~2%symb%!"
)
goto :newsymbol
 
:FillSlovar
Set AlphabetL=abcdefghigklmnopqrstuvwxyz
Set AlphabetU=ABCDEFGHIJKLMNOPQRSTUVWXYZ
For /L %%C in (0,1,25) do (
  set caseU!AlphabetL:~%%C,1!=!AlphabetU:~%%C,1!
  set caseL!AlphabetU:~%%C,1!=!AlphabetL:~%%C,1!
)
Exit /B
2
0 / 0 / 0
Регистрация: 17.01.2013
Сообщений: 8
21.01.2013, 10:56  [ТС] 3
Большое спасибо! То что нужно. Про /I никогда не знал. Так что оба варианта идут в работу.
0
1 / 1 / 0
Регистрация: 19.01.2019
Сообщений: 32
25.05.2020, 18:25 4
В инете как то нашёл
Вызов start LCASE.bat "ABCDEFGHIJKLMNOPQRSTUVWXYZ€‚ƒ„…ð†‡ˆ©Š‹ŒŽ‘’“”•–—˜™š›œžŸ"

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
@echo off
cls
setlocal enabledelayedexpansion
REM ***** Modify as necessary for the string source. *****
set "_STRING=%*"
if not defined _STRING set "_STRING=-1  "
set _STRING
REM ***** Modify as necessary for the string source. *****
set "_UCASE=ABCDEFGHIJKLMNOPQRSTUVWXYZ€‚ƒ„…ð†‡ˆ©Š‹ŒŽ‘’“”•–—˜™š›œžŸ"
set "_LCASE=abcdefghijklmnopqrstuvwxyz ¡¢£¤¥ñ¦§¨©ª«¬­®¯àáâãäåæçèéêëìíîï"
for /l %%a in (0,1,58) do (
   call set "_FROM=%_UCASE:~%
   call set "______TO=%_LCASE:~%
 
)
set ______TO
endlocal
pause
0
25.05.2020, 18:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2020, 18:25
Помогаю со студенческими работами здесь

Поиск без учёта регистра
Доброго времени суток! В общем такая проблема, произвожу поиск в базе по фамилии, но фамилии...

Реализовать поиск без учёта регистра
Здравствуйте, возникла проблема, нужно сделать поиск строки в текстовом файле без учёта регистра....

Поиск без учёта регистра PHP
Всем привет! Нужно чтобы при поиске можно было вводить Маша Иванова и маша иванова. То есть,...

Поиск по list без учёта регистра
Есть некий list с записанными в него объектами класса Person. У объектов класса Person есть поле...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru