XSLT中是否有任何直接函数以删除标点符号,就像我们在perl中一样的[:punct:]
吗?
http://perldoc.perl.org/perlrecharclass.html表明[:punct:]
是定义正则表达式和替换中的一系列标点符号的特定方法,似乎是字符由该符号定义的不同,取决于ASCII或Unicode治疗等各种因素,我无法确切地分辨出它在Unicode中定义哪些字符。
但是,XSLT和XPATH始终在Unicode上工作,并允许您用字符类p{P}
表示所有Unicode标点符号的范围,以便您可以将其与例如replace('a.b,c', 'p{P}', '')
。还有其他更严格的标点符号范围,请参见https://www.w3.org/tr/xmlschema-2/#charcter-clastes中的"类别逃生"部分。