标题: [求助]在一个文本里面把小写字母替换成大写字母
[打印本页]
作者: benetqxk
时间: 2009-7-3 22:30
标题: [求助]在一个文本里面把小写字母替换成大写字母
用批处理怎么把一个文本里面把小写字母转换成大写字母?例如:a.txt里面的abcghe转换成ABCGHE这样的,我的vb正在自习中,不知道怎么做?
作者: yishanju
时间: 2009-7-3 23:57
用正则表达式啊
作者: benetqxk
时间: 2009-7-4 01:13
我现在要实现a.txt里面的abcdefg直接转换成ABCDEFG,转换后还是在a.txt里面。把原来的abcdefg覆盖直接变成ABCDEFG。用VB怎么写?想学习下?希望那个高手指点下。
作者: tireless
时间: 2009-7-4 01:25
@echo off
set file="a.txt"
(for /f "delims=" %%a in ('findstr /n .* %file%') do (
set var=%%a
setlocal enabledelayedexpansion
if "!var:*:=!" neq "" (
for %%a in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
set var=!var:%%a=%%a!
)
echo;!var:*:=!
) else echo;
endlocal
))>"%temp%\UPPERCASE"
move "%temp%\UPPERCASE" %file%
作者: benetqxk
时间: 2009-7-4 02:33
谢谢!这个问题解决了?但是不了解这句是什么意思?move "%temp%\UPPERCASE" %file% 这个是什么意思?
作者: tireless
时间: 2009-7-4 03:05
Quote: |
Originally posted by benetqxk at 2009-7-4 02:33 AM:
谢谢!这个问题解决了?但是不了解这句是什么意思?move "%temp%\UPPERCASE" %file% 这个是什么意思? |
|
移动 "%temp%\UPPERCASE" 这个文件到当前目录,改名为 a.txt,覆盖原有的 a.txt。
作者: benetqxk
时间: 2009-7-4 03:26
谢谢!太感谢了!

作者: bluewaterx
时间: 2009-7-4 03:31
文件内容多的话 用vbs更效率.dos+vbs
@echo off
setlocal enabledelayedexpansion
if not exist a.txt echo fsdkljsfadljksdklfsd>a.txt&echo fsdkljsf要dljksdklfsd>>a.txt
for /f "delims=" %%i in ('type a.txt') do call :subVbsUCase "%%i"
move /y b.txt a.txt &type a.txt&pause>nul&exit
:subVbsUCase
echo On Error Resume Next>tmp.vbs
echo dim str>>tmp.vbs
echo str=UCase("%~1")>>tmp.vbs
echo wscript.echo str>>tmp.vbs
cscript //nologo tmp.vbs>>b.txt&del tmp.vbs
goto :eof
作者: tab
时间: 2009-7-4 05:06
用sed
sed "s/\(.*\)/\U\1/" a.txt
作者: asnahu
时间: 2009-7-4 23:06
4楼的代码不能用塞~~-_-! 9楼的不错!