我有一个字符串像'ntuser.dat ntuser.dat.log ntuser.ini test.bat test1.bat advice.20131024.98767 textdoc.txt'
我想删除所有字符指定的字符串,直到'advice.20131024'
我怎样才能做到这一点使用Windows批处理命令?
我还需要保存结果串中的可变
由于事先删除字符,直到一个特定的子字符串
回答
的(a)在搜索字符串
set text=ntuser.dat ntuser.dat.log ntuser.ini test.bat test1.bat advice.20131024.98767 textdoc.txt
:loop
if "%text:~0,6%"=="advice" goto exitLoop
set text=%text:~1%
goto loop
:exitLoop
echo %text%
(b)与用于循环
@echo off
setlocal enableextensions enabledelayedexpansion
set text=ntuser.dat ntuser.dat.log ntuser.ini test.bat test1.bat advice.20131024.98767 textdoc.txt
set result=
for %%f in (%text%) do (
set x=%%f
if "!x:~0,6!"=="advice" (
set result=%%f
) else (
if not "!result!"=="" set result=!result! %%f
)
)
echo %result%
(三)看到foxidrive答案(我总是忘记)
“建议”后的'.20131024'部分也可以保存在支票中吗?因为给定字符串中可能有多个以'advice'开头的子字符串 – user2907999
如果知道该值,请调整比较字符串和子字符串的长度。在这两个示例中,您都需要将':〜0,6%'改为':〜0,15%' –
'advice'后面的部分。实际上是当前日期。所以我得到它并将它存储在另一个变量中。如何将该变量添加到比较中? – user2907999
这设置字符串,
将其更改为删除所有内容直到advice
结束,并用advice
替换它
然后回显字符串的其余部分。
set "string=ntuser.dat ntuser.dat.log ntuser.ini test.bat test1.bat advice.20131024.98767 textdoc.txt"
set "string=%string:*advice=advice%"
echo "%string%"
- 1. 删除字符,直到一个特定的字符
- 2. Bash:删除字符,直到字符串中的某个字符
- 3. 删除一个PHP字符串中的一组特定字符
- 4. 删除字符特定字符串
- 5. 删除特定字符串
- 6. 删除从一个字符开始到另一个字符的子字符串
- 7. 从一个字符串中删除一个子字符串
- 8. PHP:如何在一个字符串中删除特定字符
- 9. 删除字符串中的字符,直到出现另一个字符
- 10. 删除Python中字符串中特定子字符串前后的字符
- 11. 修剪一个字符串,直到出现特定字符
- 12. 删除一个字符串的字符
- 13. 从字符串的第n个occurence直到一个特定的字符串读
- 14. 获取字符串,直到遇到一个特定类型的字符串
- 15. 从Matlab字符串中删除一些特定的字符
- 16. 删除一个字符在字符串
- 17. 从javascript中删除特定字符到另一个字符串中的元素?
- 18. 删除每个字符串末尾的特定字符
- 19. 试图从一个字符串中删除某个字符,直到字符串只有字符
- 20. 如何从字符串末尾删除字符,直到达到某个字符?
- 21. 删除最后一个子字符串
- 22. 如何删除特定字符后的字符串中的最后一个字
- 23. 删除Excel中的字符,直到第一个字符
- 24. 如何从字符串开始直到结尾删除一个字符串?
- 25. 从PHP输入字符串中删除特定的字符串
- 26. 如何删除字符串中的特定字符串?
- 27. PHP - 搜索字符串,然后删除,直到该字符串
- 28. 子串直到字符串
- 29. 删除字符串的特定部分
- 30. 删除JTextarea中的特定字符串
您是否想要在'advice.20131024'之后删除位? – foxidrive
是的,建议前的所有人物.20131024。 advice.20131024可以位于给定字符串中的任意位置。 – user2907999
但你想保持正确的东西? – Monacraft