我需要用“_”分割以下字符串AAA_BBB_CCC.extension
,并从结果中排除任何文件扩展名。
其中 A
、B
和 C
可以是任何字符或空格。我希望获得 AAA
、BBB
和 CCC
。
我知道 \.(?:.(?!\.))+$
将匹配 .extension
但我无法将其与匹配的“_”结合起来用于分割。
最佳答案
使用Path.GetFileNameWithoutExtension
函数从文件名中去除扩展名。
然后使用String.Split
获取包含三个项目的数组:
var fileName = Path.GetFileNameWithoutExtension(fullName);
var parts = fileName.Split('_');
var partAAA = parts[0];
var partBBB = parts[1];
var partCCC = parts[2];
如果这些部分始终具有相同的固定字符数长度,您也可以使用 Substring
函数提取它们。无需在这里诉诸正则表达式。
关于c# - 正则表达式 - 按 "_"分割并排除文件扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65812794/