2012-09-18 68 views

回答

4

既可以使用fn:normalize-space($arg as xs:string?)以除去所有附加空白:

總結:返回$arg與空白值通過汽提與一個的前緣和後空白和替換序列或多於一個空白字符歸一化單空間,#x20

或者你也可以只使用fn:replace(..)和正則表達式:

fn:replace($string, '(\r?\n|\r)$', '') 
1

CR和NL可以被指定爲


replace($string, '(
?
)*$', '') 

如果你想正常化字符串的所有空格,normalize-string是另一個更具可讀性選項:下面的正則表達式將會從您輸入的字符串中刪除所有尾隨換行符

normalize-space($string) 
+0

獅子座是正確的;我忘了你可以簡單地在正則表達式中使用\ r \ n。 –

+0

我試了你的代碼 - 這是我得到的錯誤(我在一個Java應用程序中使用Saxon處理器來處理Xquery命令) - 由:net.sf.saxon.trans.XPathException引起:正則表達式在replace()不得與net.sf.saxon.functions.Replace.maybePrecompile(Replace.java:52)中的零長度字符串 \t ...一致。 – Arvind