【发布时间】:2015-05-18 21:25:47
【问题描述】:
我在 SharePoint 列表中有一个包含许多换行符的列,包括在文本的开头。我只想删除前两个换行符,即文本开头的换行符,因为它们没有意义。
有没有办法用修剪功能做到这一点?我不能使用替换,因为它将替换所有换行符。我该怎么做?
【问题讨论】:
标签: powershell sharepoint-2013 sharepoint-list
我在 SharePoint 列表中有一个包含许多换行符的列,包括在文本的开头。我只想删除前两个换行符,即文本开头的换行符,因为它们没有意义。
有没有办法用修剪功能做到这一点?我不能使用替换,因为它将替换所有换行符。我该怎么做?
【问题讨论】:
标签: powershell sharepoint-2013 sharepoint-list
字符串对象有一个TrimStart()-方法,您可以使用它来删除空格和换行符。
$s = @"
test
"@
#Trim all whitespace and newlines before the text.
$s.TrimStart()
输出:
test
上述解决方案可能会删除太多。要仅删除两个换行符(0-2 个换行符),请尝试下面的正则表达式。
$s = @"
test
"@
$s -replace '^[\n\r]{0,4}'
输出:
test
我不确定您输入的内容看起来如何(多行字符串与字符串数组、换行符和/或回车等),因此可能需要修改答案。
【讨论】:
\r\n),而 Linux 通常只使用 \r。这就是为什么我在回答结束时说您可能需要修改它。 :) 我的答案中的正则表达式允许 0 到 4 个字符(只能是 \r 或 \n),所以如果您只需要 \n 输入数据,则将其更改为 '^[\n]{0,2}'