区分大小写的字符串操作

2024-04-29

假设我们有一个变量,例如;

set test=This is a Test string.

我们想要替换每个小写字母t与大写X如此期望的输出;

This is a TesX sXring.

我尝试使用字符串操作set test=%test:t=X%但它取代了每一个t with X。我也尝试过来自@dbenham,但无法解决。


没有可以方便地进行区分大小写的字符串操作的本机批处理命令。本机批处理解决方案必须在循环中逐字符构建新字符串。非常可行 - 但很痛苦而且效率低下。

EDIT - 很久以前,我写了一个纯批处理实用程序,名为对文本文件的内容进行区分大小写的查找/替换。性能还不错,但确实有一些限制。我很少使用该代码。我编写了一个配套例程来对变量而不是文本文件进行区分大小写的查找/替换,但我似乎丢失了该代码。

今天我几乎总是使用每当我想操纵文本时。

The 您的示例的解决方案应该是:

for /f delims^=^ eol^= %%A in ('jrepl t X /s test') do set "test=%%A"

但似乎有一个错误。如果变量名称不是其他名称,则它可以工作test。看来我还有一些调试要做。

在错误修复之前,您可以使用:

for /f delims^=^ eol^= %%A in ('cmd /v:on /c "echo(!test!)|jrepl t X"') do set "test=%%A"


更新:该bug已在3.4版本修复 The /S选项现在适用于名为的变量TEST.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

区分大小写的字符串操作 的相关文章

  • 批量检测系统是32位还是64位

    有谁知道如何创建一个批处理文件 如果是 64 位系统 可以对一个程序进行 shell 处理 如果是 32 位系统 则可以对另一个程序进行 shell 处理 检查 PROCESSOR ARCHITECTURE being x86 if PRO
  • 使用批处理文件挂载 .iso 文件 win windows 8 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个游戏 已备份到 iso 文件 笔记本电脑中的磁盘驱动器很吵 并且希望从单个快捷方式运行它 而不必每次都挂载 iso 文件 我运行
  • 以不可见模式运行主bat文件

    我有一个大师 bat文件有 call file1 bat call file2 bat call file3 bat call file4 bat 我想在我的 Windows Server 2008 上安排它以静默 不可见模式运行 我正在寻
  • 如何将 .bat 文件中的变量获取到 PowerShell 脚本中?

    我正在用 PowerShell 替换 bat 脚本的部分内容 批处理文件的配置是通过以下文件完成的set适当的环境变量 我正在寻找一种方法将这些变量值加载到 ps1脚本 无需修改 bat文件 因为它们也在其他地方使用 一个例子 bat看起来
  • 为什么 %processor_architecture% 总是返回 x86 而不是 AMD64

    我正在尝试检索环境变量来检测系统是32位还是64位 但在64位服务器上环境变量 processor architecture 正在返回x86代替AMD64 有人对此有任何线索吗 您可能获得了错误的环境变量 如果您的应用程序是在 64 位操作
  • 如何在Windows上安装Xlib(eclipse、c语言)

    好的 我需要使用它进行图形编程 GUI cs 349 uwaterloo 第一次作业 我在谷歌搜索结果中看到随机的 Xlib h 和 Xutil h 文件 但它没有在哪里说明我如何从某个网站安装或下载 Xlib 我什至尝试将 Xlib h
  • 使用 psexec 远程执行时,脚本中的 Reg 查询不起作用

    我最近得到了一个脚本 用于查询 reg 的临时文件夹路径并清理该文件夹 它工作得很好 感谢 Compo 但是当与 psexec 远程使用时 它说 系统无法找到指定的注册表项或值 在使用 PSEXEC 执行批处理之前 我首先将其复制到 C 然
  • git 漂亮格式占位符之间的空格

    因为某些原因 这个原因 https stackoverflow com questions 53034425 git log pretty format windows strange behavior 我可能需要运行这样的 git 命令
  • Windows Batch 帮助从命令输出设置变量[重复]

    这个问题在这里已经有答案了 我需要运行一个简单的 find 命令并将输出重定向到 Windows 批处理文件中的变量 我已经尝试过这个 set file ls find txt echo file 但这不起作用 如果我运行此命令 它可以正常
  • 在批处理文件中添加 +1 到日期

    我有一个批处理文件 可以很好地创建今天的日期 现在我需要更新它以显示明天的日期 任何帮助深表感谢 echo off set TimeStamp 12 00 00 FOR F TOKENS 1 DELIMS A IN DATE T DO SE
  • CMD 或 Powershell 命令组合(合并)两个文件中的相应行[重复]

    这个问题在这里已经有答案了 是否可以使用 CMD 和 Powershell 将 2 个文件合并为 1 个文件 如下所示 file1 line1 tab file2 line1 file1 line2 tab file2 line2 file
  • Curl 不被识别为内部或外部命令、可运行程序或批处理文件

    我已经安装了curl并将其设置为environment variable在我的系统中 但是当运行curl命令它给出一个错误 curl is not recognized as an internal or external command
  • 如何获取%CD%的父路径

    如何获取当前 CD 的父路径 例如 ECHO CD result C Windows System32 这不起作用 ECHO CD 期望的结果 C Windows 尝试更改当前目录 然后使用 cd pushd echo cd popd
  • 从目录获取第一个文件名的批处理脚本

    我的函数需要特定目录中的第一个文件名来使用第一个文件处理一些测试 完成测试后从目录中删除第一个文件 我尝试如下 FOR R
  • powershell 和 cmd 之间的文件大小不同[重复]

    这个问题在这里已经有答案了 我正在使用一点processconf js工具来构建configuration json来自多个文件 json files 这是我正在使用的命令 node processconf js file1 json fi
  • 最后一个参数中的正斜杠会导致批处理文件目录(“%~dp0”)的路径发生更改

    我正在学习如何在批处理脚本中使用参数 并最终创建了某种用于读取参数和设置参数的模板 echo off SetLocal EnableDelayedExpansion set needextra set errstat set noflag
  • for循环批处理文件内的算术

    我在批处理文件中有一个 for 循环 如下所示 for y in 100 200 300 400 500 do set a x y 25 echo x 该行 set a x y 25 好像没有做任何划分 将每个 y 除以 25 的正确语法是
  • 2 批字符串问题

    1 是否有任何内置函数可以告诉我变量的内容是否仅包含大写字母 2 有没有办法查看变量是否包含字符串 例如 我想查看变量 PATH 是否包含 Ruby 对于第 1 部分 findstr就是答案 您只需使用正则表达式功能即可errorlevel
  • 使用 .bat 通过文件资源管理器打开文件夹

    我应该使用什么命令在程序末尾打开指定路径 start c Yaya yoyo 不管用 你可以这样尝试 SystemRoot explorer exe c Yaya yoyo
  • 如何使用命令行压缩文件?

    我想使用批处理文件命令 Windows XP 批处理文件 压缩目录 例如 如果我想解压缩一个文件意味着我可以使用jar xf file zip java bat 文件命令 就像我想要一个命令行批处理来压缩目录一样 如果您使用的是 Ubunt

随机推荐

  • Grails Log4J 未登录生产环境

    我有一个 Grails 1 3 7 应用程序 并尝试在配置中设置 log4j 以用于生产 log4j 设置在开发中很好 但我无法在生产中显示任何内容 我正在尝试制作一个滚动文件等 但我无法显示任何内容 我什至在 信息 级别进行了配置 这样我
  • 不显眼的 Javascript 混淆了事件处理

    你知道我最喜欢引人注目的 javascript 的什么吗 当你触发一个事件时 你总是知道它会做什么 a a 现在每个人都在喝这种不引人注目的酷爱饮料 这一点就不那么明显了 对绑定事件的调用可以发生在页面中包含的任意数量的 javascrip
  • 解码子级时访问嵌套 Codable 结构中父级结构的属性

    在嵌套中使用解码器时Codablestruct 有什么方法可以访问父结构的属性吗 我能想到的唯一可行的方法 尚未测试 是在父结构中也使用手动解码器 在userInfo字典 然后访问userInfo在子结构中 但这会产生大量样板代码 我希望有
  • 将 YYYYMMDD 字符串转换为 Snowflake 中的 YYYY-MM-DD 日期格式

    基于雪花中提到的示例文档 https docs snowflake com en sql reference functions to date html 为什么仅通过更改 ORDER BY 子句 日期和时间戳值就会返回不同的值 另外 我正
  • 这个简单的洗牌算法是否会返回一副随机洗牌的扑克牌? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 您有一个包含 52 张卡片的列表 其中列表中卡片的位置不会移动 您有第二个卡位置列表 首先 位置列表与第一个列表相同 迭代第一个列表 对于第一个列表中
  • 开始调试和附加到进程有什么区别

    当我将项目附加到我的 w3wp exe IIS 工作进程时 我的项目加载速度明显快于 开始调试 时的加载速度 但是 无论我 开始调试 还是 附加到进程 同一个工作进程似乎都在处理相同数量的模块 DLL w3wp exe 为什么附加到进程的速
  • onclick 和 href="javascript:函数名 之间有什么区别?

    有什么区别吗 1 a href Link1 a and 2 a href Link2 a 会以某种方式影响页面性能吗 如果您的元素实际上不应该将用户链接到某个地方 不要将其设为锚元素 如果您正在使用 a 标签只是为了改变下划线 光标 不要
  • Zookeeper 容错到底意味着什么?同时还是累计?

    正如 ZooKeeper 入门指南 中提到的 容错集群设置至少需要三台服务器 并且强烈建议您拥有奇数数量的服务器 所以如果我有 5 个服务器 如上所述 当其中 2 个服务器失败时我仍然可以生存 但这意味着同时或累积 那么这个怎么样 5 台服
  • pthread_create 编译返回错误

    我使用以下代码创建两个线程 header files include
  • create-react-app 中的 public/manifest.json 文件是什么?

    我知道 chrome 扩展使用 manifest json 但在这里 它也被用作其他东西 内容 short name React App name Create React App Sample icons src favicon ico
  • 如何使用必须包含空格的 title~= 进行 CSS 属性选择器? [复制]

    这个问题在这里已经有答案了 我有以下选择器 post link title Corporate 现在 我需要只选择标题仅在开头而不是标题中其他位置包含 Corporate 一词的元素 所以我有两个选择 1 创建一个仅检查标题开头的选择器 然
  • 如何在Windows平台上编写Git Server Hooks?

    我找不到任何适用于 Windows 的 Git 挂钩的明确示例 我在 Windows Server 上使用 Bonobo Git Server 我需要预提交和提交后挂钩作为 cmd 或 bat 预提交应检查空注释 提交后应发送有关提交的电子
  • Spring MVC - 从 JSP 提交对象

    我有一个显示客户列表的 JSP ArrayList searchResults 我希望能够选择其中之一 并将其 提交给 Spring MVC 控制器 但是 我似乎无法传递所选对象 只能传递它的属性 例如 customerId 我真的需要传递
  • 英特尔编译器使用错误的标头

    我试图找出为什么Intel Compiler 18 0 已安装after我的 Visual Studio 2017 安装使用的头文件MSVC 而不是它自己的 因为它会导致错误 一个简单的 include
  • Android SDK 构建工具、平台工具和工具是什么?应该使用哪个版本?

    我知道这是一个非常基本的问题 但令我惊讶的是 我找不到任何有关 Android SDK Build tools 的文档 除了 Android SDK 工具和 Android SDK 平台工具之外 还有一堆 Android SDK 构建工具
  • WPF - 如何使用模板创建图像按钮

    我正在尝试创建一个包含 3 个图像的按钮 一个普通图像 一个按下图像和一个禁用图像 我将使用它们来创建向上 向下箭头按钮 我相信正确的方法是从Button并使用Template并设置触发器来更改图像 我有 3 个依赖属性 每个图像一个 图像
  • 产品动态折扣

    在现实世界中 您购买的产品的折扣非常有趣 例如 卖家通过以下方式为其产品提供折扣 购买一份数量不会有折扣 购买 2 个他提供 10 折扣 购买 4 和 5 折扣为 20 6 日及以后 22 在电子商务应用程序中实现此目的的最佳方法是什么 取
  • 用作 MAMP 起始页 URL 的 index.* 文件在哪里?

    我试图了解 MAMP 如何管理 Apache Web 服务器 但我找不到index 用作 MAMP 起始页的文件 虚拟主机配置 httpd vhosts conf 不包括在内并且Applications MAMP htdocs仅包含我自己的
  • 使 minGW 控制台程序在没有控制台的情况下运行

    我在 MinGW 中制作了一个控制台程序 它执行网络和文件操作 然而 它是一个控制台程序 如何让它安静地运行 没有控制台 没有窗口 尝试这个 ShowWindow GetConsoleWindowHandle SW HIDE GetCons
  • 区分大小写的字符串操作

    假设我们有一个变量 例如 set test This is a Test string 我们想要替换每个小写字母t与大写X如此期望的输出 This is a TesX sXring 我尝试使用字符串操作set test test t X 但