1
Out-String
似乎不工作,至少对5.1和6B2版本:获得前x个字符的最简单方法是什么?
"$('a'*10) $('b'*10)" | Out-String -Width 10
结果:
aaaaaaaaaa bbbbbbbbbb
Out-String
似乎不工作,至少对5.1和6B2版本:获得前x个字符的最简单方法是什么?
"$('a'*10) $('b'*10)" | Out-String -Width 10
结果:
aaaaaaaaaa bbbbbbbbbb
你可以使用.Substring()
Method.。如果子字符串位置不包含在字符串中,则失败。 (在这种情况下,如果字符串少于10个字符)
"$('a'*10) $('b'*10)".Substring(0,10)
或者,你可以使用-replace
删除字符串的最后一部分。由于当字符串短于10时什么都不匹配,它不会取代任何东西,但不会失败,只会返回原始字符串。
"$('a'*10) $('b'*10)" -replace '(^.{10})(.*$)','$1'
当字符串少于10个字符时失败。 – mtman
@mtman在答案中注明,给出了一种替代方法,该方法在字符串短于10个字符时返回原始字符串,而不是失败。 – BenH
好主意,我认为正则表达式应该是'^(。{10})。* $',以确保它不能从中间选择字符。 – mtman