订购商品时遇到困难......
我正在尝试处理文件,最终结果是项目以正确的顺序上传到SharePoint。
在我需要处理的数据(CSV)中,我有一个名为Version
的列,这是一段限制为两个字符的文本。第一个版本为A
,范围为ZZ
。
正常项目可能如下所示。这里,第1项有三个版本,我可以按版本列的升序对它们进行排序。
Title: item 1
Version: A
Title: item 1
Version: B
Title: item 1
Version: C
问题
Title: item 2
Version: A
Title: item 2
Version: B
...... many versions later ....
Title: item 2
Version: AA
Title: item 2
Version: AB
在“版本”上使用升序的排序表达式,将按以下顺序排序:
A
AA
AB
B
当我需要订单时:
A
B
AA
AB
关于如何实现上述目标的任何想法?
答案 0 :(得分:6)
左边有一个空格,它按字母顺序排列在A
之前:
$sortedByVersion = $items |Sort -Property {$_.Version.PadLeft(2,' ')}
以下是使用裸字符串的示例:
PS C:\> "a","b","c","aa","bb","cc"|Sort-Object
a
aa
b
bb
c
cc
PS C:\> "a","b","c","aa","bb","cc"|Sort-Object {$_.PadLeft(2,' ')}
a
b
c
aa
bb
cc