Regex Delphi中的正则表达式,用于剥离字符串中的回车符和换行符
在javascript中,我使用下一个代码去掉一个字符串的linefeed和回车符,效果很好:Regex Delphi中的正则表达式,用于剥离字符串中的回车符和换行符,regex,delphi,Regex,Delphi,在javascript中,我使用下一个代码去掉一个字符串的linefeed和回车符,效果很好: var values="something....." var sanit=values.replace(/(\r?\n|\r\n?)/g, ""); 在Delphi中,我正在尝试下一个代码: values="something....." sanit:=TRegex.Replace(values,'/(\r?\n|\r\n?)/g', ''); 但它不起作用。没有进行替换。此任务不一定需要正则表
var values="something....."
var sanit=values.replace(/(\r?\n|\r\n?)/g, "");
在Delphi中,我正在尝试下一个代码:
values="something....."
sanit:=TRegex.Replace(values,'/(\r?\n|\r\n?)/g', '');
但它不起作用。没有进行替换。此任务不一定需要正则表达式。这也可以通过以下功能完成: 或 替换
#10
(\n
)和#13
(\r
)的组合
当所选目标平台为Windows时,常量
sLineBreak
位于单元系统中,并声明为#13#10
(或十六进制:#$0D#$0A
)。此任务不一定需要正则表达式。这也可以通过以下功能完成:
或
替换#10
(\n
)和#13
(\r
)的组合
当所选目标平台为Windows时,常量sLineBreak
位于单元系统中,并声明为#13#10
(或十六进制:#$0D#$0A
)。查看Delphi是否在正则表达式中使用分隔符。关于语言转义,以及替换的参数顺序。另外,如果replace自动替换所有(不需要g),我相信Delphi会使用PCRE。阅读有关该正则表达式的文档。此外,此正则表达式已足够(?:\r?\n |\r)+
如果StringReplace可以,为什么要使用正则表达式?ISTM认为它应该使用起来更快更简单。为什么不使用<代码>sanit:=StringReplace(值,#$D#$A,,[rfReplaceAll])代码>找出Delphi是否在正则表达式中使用分隔符。关于语言转义,以及替换的参数顺序。另外,如果replace自动替换所有(不需要g),我相信Delphi会使用PCRE。阅读有关该正则表达式的文档。此外,此正则表达式已足够(?:\r?\n |\r)+
如果StringReplace可以,为什么要使用正则表达式?ISTM认为它应该使用起来更快更简单。为什么不使用<代码>sanit:=StringReplace(值,#$D#$A,,[rfReplaceAll])
或仅在特别希望从字符串的开头和结尾删除空白和控制字符时使用。谢谢,因为我正在使用JS进行前端工作,所以我尝试在delphi中编写类似的代码。看来TRegex.Replace(值,'\R','')工作得很好。但是您的解决方案也可以使用,或者仅在特别希望从字符串的开头和结尾删除空白和控制字符时使用。谢谢,因为我正在使用JS进行前端工作,所以我尝试在delphi中编写类似的代码。看来TRegex.Replace(值,'\R','')工作得很好。但你的解决方案也很有效
StringReplace(value, sLineBreak, '', [rfReplaceAll])
StringReplace(StringReplace(value, sLineBreak, '', [rfReplaceAll]), #10#13, '', [rfReplaceAll])