2015-08-15 58 views
0

如何在PowerShell中獲取以下XML文件名中的語言環境?查找文件名中的語言環境

xx12345(de-de,xxxx.54).xml 

試着找到一個更好的解決方案,但過去一小時沒有運氣。任何幫助,將不勝感激。

+0

看起來像我沒有正確使用子字符串方法。 $ data = $ file.name.Substring(9,5) –

回答

1

我會在這裏使用正則表達式,除非文件名格式非常嚴格。這裏有一個正則表達式來提取的文化和語言環境:

'xx12345(de-de,xxxx.54).xml' -match '\(([^,]+),' 

你想要的信息是在捕獲組的自動變量$matches 1如:

$matches[1] 

輸出:

de-de 
+0

如果您想更具體一些,可以使用'\(([az] {2} - [az] {2})'',而不是'\ (([^,] +),'。 –

+0

處理大多數但不是所有的文化名稱,例如'ca-ES-Valencia'。 –

+0

嗯...我不知道這樣的文化名稱甚至存在。 '\(([az] {2} - [az] {2,}(?: - [az] +)?),'可以。 –

相關問題