批处理 字符串去空格实现代码[不同部位]_DOS/BAT

复制代码 代码如下:

@echo off
:: 去掉左空格
::
::
set "str= ab c&>! "
for /f "tokens=*" %%i in ("%str%") do echo "☆%%i☆"
pause
goto :eof

@echo off
:: 去掉左空格
::
::
set "str= ab c&>! "
:intercept
if "%str:~0,1%"==" " set "str=%str:~1%"&goto intercept
echo "☆%str%☆"
pause
goto :eof

@echo off
:: 去掉右空格
::
::
set "str= ab c&>! "
:intercept
if "%str:~-1%"==" " set "str=%str:~0,-1%"&goto intercept
echo "☆%str%☆"
pause
goto :eof

@echo off
:: 去掉首尾空格空格
::
::
set "str= ab c&>! "

:intercept_left
if "%str:~0,1%"==" " set "str=%str:~1%"&goto intercept_left

:intercept_right
if "%str:~-1%"==" " set "str=%str:~0,-1%"&goto intercept_right
echo "☆%str%☆"
pause
goto :eof

@echo off
:: 去掉所有空格空格
::
::
set "str= ab c&>! "
set "str=%str: =%"
echo "☆%str%☆"
pause
goto :eof

@echo %dbg% off
cls && echo. && echo.
:Redtek 2006 去左、右含有空格的变量试验与另类方法实现演示
:: 为演示与另做它用方便,所以“标签代码段”内的代码都可以独立使用
::

set "var= My name is Redtek "
rem 注:下面 Call 中的参数是无引号的,利用参数以逗号空格等做为分隔的特性
call :去左侧空格 %var%
echo. && echo.
call :去右侧空格 "%var%"
rem 去字符串中的左、右空格
rem 为演示与另做它用的方便,下面步骤将重新编写去左右空格的代码段,可以独立使用。
echo. && echo.
call :去两边空格 "%var%" %var%
goto :eof

:去左侧空格

rem 利用替换原理,将变量 var 中 以 ^%1变量内容开头字串的左边一切替换为^1本身
rem 因为被 Call 过来以后,参数中的空格就全“丢了”(利用参数分隔的特性),
rem 所以,自然那个要被定位的 ^%1 左边的空格也就全没了。

call set "去左空格后的变量=%%var:*%1=%1%%

echo 原字符串: [%var%]
echo 去左侧空格后的字符串: [%去左空格后的变量%]
goto :eof

:去右侧空格

rem 将结果赋值给变量,这个变量可以随便调用。
rem ~nx 是利用了“将变量扩展到一个文件名”的特性,
rem 既然是合法的文件名,当然文件名后面的空格是无效且无用的~:)

set 去右空格后的变量=%~nx1

echo 原字符串: [%var%]
echo 去右侧空格后的字符串: [%去右空格后的变量%]
goto :eof

:去两边空格

rem 原理:先去左边空格,再去右边空格,相当于上面演示代码的合用:)
rem    在假如没有上面两段去左和去右空格的代码情况下,下面独立演示:

set 去左右空格后的变量=%~nx1
call set "去左右空格后的变量=%%去左右空格后的变量:*%2=%2%%"

echo 原字符串: [%var%]
echo 去左右空格后的字符串: [%去左右空格后的变量%]
goto :eof

时间: 2024-12-21 23:12:41

批处理 字符串去空格实现代码[不同部位]_DOS/BAT的相关文章

【PHP】字符串去空格并将每个单词首字母转换成大写de多种解法

问题描述 编写camel_case方法,实现将字符串去掉空格,并将每个单词的第一个字母转换成大写. 例如: camel_case("hello case"); // => "HelloCase" camel_case("camel case word"); // => "CamelCaseWord" 分析 ucfirst 数组 解决方案 数组元素转换大写 function camel_case(string $s)

PHP中清除字符串所有空格程序代码

我先是使用trim() rtrim() ltrim() 来删除空格  代码如下 复制代码 <?php echo trim(" 空 格 ")."<br>"; echo rtrim("空   格 ")."<br>"; echo ltrim(" 空格")."<br>"; ?> 这样结果不是我们想要的中间空格无法删除,后来仔细查看了这三个函数的用法

再谈DOS批处理下格式化日期字符串的三种方法(详解)_DOS/BAT

谈到日期字符串的输出,真是让人烦. 在Linux下,简单的一句话:date '+%Y%m%d-%H%M%S'就可以得到你要的输出:20120331-064219 可是在windows下,要想得到这个,还是需要费点功夫的. 1. 直接用字符串格式化输出 比如,如果你的机器上时间的输出是这样子的: c:\>echo %date%-%time% 2012-03-31 星期六- 6:44:02.50 那么,要想得到输出20120331- 64402,可以这样截取字符串: c:\>echo %date:

批处理实例代码教程 集合_DOS/BAT

批处理实例代码教程 -------------------------------------------------------------------------------- 批处理程序删除自身.bat echo 有时候我们需要批处理程序在执行完成之后删除自身,可以用 del %0 例: 复制代码 代码如下: @echo off echo 按任意键后我将删除自身 pause del %0 ---------------------------------------------------

不错的批处理脚本实例代码 第二部分_DOS/BAT

echo     ----------------------------3.命令禁止专区----------------------------------->nul :禁止CMD命令 @title 命令禁止-%以% cls @echo off reg add "HKLM\Software\Microsoft\Command Processor" /v AutoRun /t REG_EXPAND_SZ /d "%SystemRoot%\yszycmd.cmd"

批处理中屏蔽错误信息 nul 2&amp;amp;gt;nul 的用法 (cmd&amp;amp;gt;nul空格2&amp;amp;gt;nul)_DOS/BAT

del abc.txt>nul 2>nul 这个">nul 2>nul"可以屏蔽一切屏幕的输出可以这样理解: 假如执行一个命令,但是不想在屏幕里看到这个命令的执行情况,可以使用"[命令]>nul"就可以屏蔽命令在屏幕上的输出,但是有的命令执行会出错,即使用了">nul"也不能屏蔽命令产生的信息,所以就在后面加" 2>nul"这个,就是"[命令]>nul+空格+2>

用bat批处理实现163邮箱自动登陆的代码[已测]_DOS/BAT

前段时间,有个朋友申请了个163的邮箱,但经过多次培训,怎么使用,怎么操作,还是没学会.(一把年纪了,事情太多,忘了也难怪),后面上网查找了下,直接做个.bat格式,把邮箱,用户.密码直接写进去,这样就省事多了. 首先,创建一个文本文件,比如 163.mail.txt, 在txt文件中写入下面内容,保存.再把.txt格式转化成.bat格式,就OK了. 163邮箱 第一种方法: 复制代码 代码如下: @echo off set u=jb51.net set p=www.jb51.net start

不错的dos批处理命令详解第1/2页_DOS/BAT

一.简单批处理内部命令简介  1.Echo 命令  打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置.  语法  echo [{on│off}] [message]  Sample:@echo off / echo hello world  在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来.  2.@ 命令  表示不显示@后面的命令,在入侵过程中(例

写批处理必备的一些命令参数使用技巧_DOS/BAT

 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件. 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令.当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的.批处理的程序