windows - 在 Windows shell 脚本中从字符串中提取数字

标签 windows for-loop batch-file cmd

我有一个类似于脚本文件 hello-1234-something 的字符串。我需要使用批处理文件获取 1234。但数字 1234 不一样,它不断变化,我需要在字符串中找到该数字,然后取出该数字。我是批处理文件编程的新手。我想批量执行此操作

最佳答案

试试这个:

@ECHO OFF &SETLOCAL ENABLEDELAYEDEXPANSION
SET "teststring=abcDEFG1234ABSdefh"

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 "teststring=!teststring:%%a=!"
)
ECHO %teststring%

注意:这不适用于特殊字符,例如:<>&|!^

关于windows - 在 Windows shell 脚本中从字符串中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17817218/

相关文章:

全驱动器上的 C 编程 fwrite

swift - 在 Swift 中,如何查看 Process() 传递给 shell 的字符串?

java - 在二维数组中查找相邻元素并计算它们。

batch-file - 是否可以在 BAT 文件中加密/散列密码?

batch-file - 批处理 - 如何在脚本中读取另一个命令行函数的输出?

windows - 为什么 "Content-Length: 0"在 POST 请求中?

c++ - 将 HTTP 连接绑定(bind)到特定适配器(提示 : Metered Connection)

css - 将属性值中的 % 与 for 循环变量一起使用时出现 SASS 错误

c - 循环遍历条件

windows - 使用批处理更改虚拟内存