如何从字符串中替换多个特殊字符
How to replace more than one special character from a string
我有一个字符串,如下所示。
string s = @"Test1212ULL99|H|||F~~~
NTE||| Reference Range~ Negative~ Elevated Antibody Level~~
FT1||||2015072100||NA|^^DMHC100^STDNULL99^I9
MSH|^~\&|Cnoss CA||||901834|P|2.4|||NE|NE|||||CALINX_1.3~
PID|2||MRN45161510^^^^PT~1860664CASANOVA AVE&820^^MONTEREY^CA^93940^^H||(831) 917-1541";
string replacementString = "\r";
string result = Regex.Replace(s, @"~~\r", replacementString);
我必须替换行末尾的所有 ~ 符号,而不是行中间的 ~ 符号。例如,第 1 行包含三个 ~ 最后签到,第二行和第三行包含 2 和 1 ~ 最后签到。
任何人都可以告诉我如何实现这一目标吗?
任何帮助将不胜感激。
~+(?=[\r\n])
这会将字符串 only.Replace 末尾的 ~
替换为 empty string
。
查看演示。
简短而甜蜜。 (如果你只需要替换而不是捕获 ~
)
~+?$
这将只从行的最后而不是从中间删除所有 ~
。也适用于多行字符串。
演示:https://regex101.com/r/cP8lG0/1
干杯:)
我有一个字符串,如下所示。
string s = @"Test1212ULL99|H|||F~~~
NTE||| Reference Range~ Negative~ Elevated Antibody Level~~
FT1||||2015072100||NA|^^DMHC100^STDNULL99^I9
MSH|^~\&|Cnoss CA||||901834|P|2.4|||NE|NE|||||CALINX_1.3~
PID|2||MRN45161510^^^^PT~1860664CASANOVA AVE&820^^MONTEREY^CA^93940^^H||(831) 917-1541";
string replacementString = "\r";
string result = Regex.Replace(s, @"~~\r", replacementString);
我必须替换行末尾的所有 ~ 符号,而不是行中间的 ~ 符号。例如,第 1 行包含三个 ~ 最后签到,第二行和第三行包含 2 和 1 ~ 最后签到。
任何人都可以告诉我如何实现这一目标吗? 任何帮助将不胜感激。
~+(?=[\r\n])
这会将字符串 only.Replace 末尾的 ~
替换为 empty string
。
查看演示。
简短而甜蜜。 (如果你只需要替换而不是捕获 ~
)
~+?$
这将只从行的最后而不是从中间删除所有 ~
。也适用于多行字符串。
演示:https://regex101.com/r/cP8lG0/1
干杯:)