Войти

Показать полную графическую версию : [решено] Как экранировать символ?


Seryoga204
26-09-2010, 20:21
Подскажите пожалуйста как экранировать символ "*"? Батник должен искать в текстовом файле строки которые начинаются словом "Аудит*", имено чтобы слово аудит заканчивалось на занак "*". Но отбираются все строки которые начинаются со слова Аудит как с * так и без него. Пробывал так "Аудит^*", но все равно отбираются все со словом Аудит.

kiripanda
26-09-2010, 21:12
findstr/?
...
\x Служебный символ: символьное обозначение служебного символа x

Seryoga204
26-09-2010, 21:16
kiripanda,
Спасибо!

Seryoga204
27-09-2010, 21:01
Подскажите пожалуйста. Ситуация таже, только теперь надо єкранировать " , т.е надо искать слова "учет" которые начинаются на знак " (кавычки) , пробывал "\"учет" и "^"учет" .

kiripanda
27-09-2010, 22:03
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.

D:\test>findstr /c:"\"учет" file.txt
+ т.е надо искать слова "учет" которые начинаются на знак " (кавычки) ,
+ пробывал "\"учет"
+ и "^"учет" .

D:\test>findstr /c:\"учет file.txt
+ т.е надо искать слова "учет" которые начинаются на знак " (кавычки) ,
+ пробывал "\"учет"
+ и "^"учет" .

D:\test>
М.б. не совпадает кодировка в файле и в запросе?

Seryoga204
27-09-2010, 22:20
kiripanda, вот часть кода
(for /f "tokens=1 delims=:" %%i in ('findstr /brnc:"Отдел" /C:"Аудит\*" /C:"\"учет" "%fi%"') do (
set /a $j=%%i+1& for /f "tokens=1* delims=[]" %%a in (
'find /v /n ""^<"%fi%"^|findstr /bc:"[%%i]" /c:"[!$j!]"') do echo.999 %%b
)) >"%fo%"
Кодировка 866 и там и там.
При запуске вылетает
Microsoft Windows XP [Версия 5.1.2600]
(С) Корпорация Майкрософт, 1985-2001.

>"L:\1.bat"
Непредвиденное появление: &.
>
Или как сделать типа "?учет", т .е. все строки в которых со второго симола начинается слово учет?

kiripanda
27-09-2010, 22:29
Наверно, надо set /a $j=%%i+1^& for /f "tokens=1* delims=[]" %%a in (

? А нельзя так:
set /a $j=%%i+1
for /f "tokens=1* delims=[]" %%a in (

Или как сделать типа "?учет"

findstr/?
...
Краткая сводка по синтаксису регулярных выражений:
. Любой символ.

Seryoga204
27-09-2010, 22:50
Спасибо огромное. Все получиось!




© OSzone.net 2001-2012