powershell - 如何使用 Powershell 检测 CamelCase

标签 powershell camelcasing

我想拆分 ArtistTitle 形式的歌曲名称,以便它们最终成为 Artist - Title

Powershell 中有没有办法检测 CamelCase 边界并执行替换?这应该只影响第一个案例边界并忽略其余部分。

最佳答案

您可以使用区分大小写的正则表达式在任何大写字符之前拆分字符串,删除空元素,然后用破折号连接剩下的内容:

PS> 'ArtistTitle' -csplit '(?=[A-Z])' -ne '' -join '-'
Artist-Title

要仅拆分第一个单词,请使用拆分运算符的第二个参数(Max-substrings)指定返回的最大子字符串数。有关详细信息,请参阅 about_Split 帮助主题:

PS> 'ArtistVeryLongAlbumTitle' -csplit '(?=[A-Z])',3  -ne '' -join '-'
Artist-VeryLongAlbumTitle

更新:我能够使用正则表达式模式来缩短命令项目未创建:

PS>  'ArtistVeryLongAlbumTitle' -csplit '(?<!^)(?=[A-Z])',2 -join '-'
Artist-VeryLongAlbumTitle

关于powershell - 如何使用 Powershell 检测 CamelCase,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17643380/

相关文章:

Powershell:展开存档:无法验证参数 'Path' 上的参数

c# - 命名局部常量 : UpperCamelCase or lowerCamelCase?

file - 从路径中删除最后一个文件夹

python - 如何使用路径和参数中的空格从python执行powershell脚本

java - 自动将驼峰小写转换为驼峰大写

python - 为什么 True/False 在 Python 中大写?

c# - 用正则表达式拆分 CamelCase

c# - 如何将任何 pascal 大小写 JSON 对象转换为驼峰大小写 JSON 对象?

excel - 在 Powershell 中读取 Excel 工作表

search - 优化 PowerShell 中的简单搜索脚本