在javascript中,我使用下一个代码剥离字符串的linefeeed和回车符,并且效果很好:

var values="something....."
var sanit=values.replace(/(\r?\n|\r\n?)/g, "");


在Delphi中,我正在尝试下一个代码:

values="something....."
sanit:=TRegex.Replace(values,'/(\r?\n|\r\n?)/g', '');


但这行不通。没有替换完成。

最佳答案

您不必为此任务使用RegEx。这也可以通过功能StringReplace完成:

StringReplace(value, sLineBreak, '', [rfReplaceAll])


要么

StringReplace(StringReplace(value, sLineBreak, '', [rfReplaceAll]), #10#13, '', [rfReplaceAll])


替换#10\n)和#13\r)的两种组合。

当选定的目标平台是Windows时,常量sLineBreak位于单元System中,并声明为#13#10(或十六进制:#$0D#$0A)。

关于regex - Delphi中的RegEx剥离回车符和换行符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56026400/

10-11 10:21