DOS下处理含特殊字符[如:&]的字符串

DOS下处理含特殊字符[如:&]的字符串

这两天闲着蛋疼[等面试通知中…],突然想写一个认证学校亿邮网关的脚本,这样就不用每次输入长长的用户名和密码了。写的时候遇到了一些个大大小小的问题[DOS脚本是这两天现学的,菜鸟中的菜鸟…],比如在处理含有特殊字符的的字符串时,搞死我了。因为在模拟网页提交信息的时候,有个字符‘&’,它本身在DOS中有着特殊的功能,所以DOS在遇到这个符号时,先把它当自己人给用了,也TM不考虑考虑我的感受。

问题大致简化成这样,我本是这么写的:

 

set var=12&345
echo %var%

 

DOS下处理含特殊字符[如:&]的字符串

这样写肯定不行啦,Pass掉了,后来听说用转义符号’^’,set var=12^&345,还是不行,

DOS下处理含特殊字符[如:&]的字符串

不过直接echo的话可以[Echo 12^&345]

但不是我想要的答案。然后又有人说用引号,好的

DOS下处理含特殊字符[如:&]的字符串

OK,貌似可以,But这样字符串就变成了““12&345””,可是我不要引号啊,[其实这样处理我的认证脚本就可以完成了,但带着我不想要的引号,心里不爽,就此打住?不是我的Style]。

继续搞这个问题,参考了贴子【点击打开链接】用到了开启延迟变量这个东西,搞定了[要在脚本中完成,直接在DOS界面实验的话不行]

setlocal enabledelayedexpansion
set var=12^&345
echo !var!
endlocal

DOS下处理含特殊字符[如:&]的字符串

舒口气,This exactly is what I want!

====================================【分割线】==========================================

set str=123^^^&456
echo %str%

这也是一种解决办法,^^^&这是个什么说法?待搞明白中……

转载于:https://www.cnblogs.com/XBin/archive/2012/12/16/2853625.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/110255.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号