regex - Delphi 中的 RegEx 去除字符串中的回车符和换行符
问题描述
在 javascript 中,我使用下一个代码去除字符串的换行符和回车符,它运行良好:
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
) 的组合。
常数sLineBreak
位于单元中,并在选定的目标平台为Windows时System
被声明为#13#10
(或在十六进制:)中。#$0D#$0A
推荐阅读
- ios - 让我的 Firemonkey 应用程序 (Tokyo R3) 部署到我的测试设备
- c++ - 在 C++ 中在全局范围内运行代码(是否有更现代的方法)?
- reactjs - 在 React 中在哪里声明我的函数和变量
- flutter - 实现导航器时出现异常。使用不包含 Navigator 的上下文请求的 Navigator 操作
- python - python request.post的语法错误
- types - Ada:子类型转换或调用'Base
- javascript - Selenium WebDriver 网页点击事件不起作用
- html - 样式未应用于角度组件
- css - 动画方向反转时更改 CSS 属性
- c++ - 将 shared_ptr 返回到 C++ 中的基类