C#中正则表达式与回车换行符问题

时间:2022-04-12 08:54:18

C#中,读取文本文件内容,里面往往有许多回车换行符(“\r\n”),虽然一般不可见,但却实实在在的存在。这时候,使用正则表示式进行匹配,需要考虑其存在。今天就遇到这样一个问题:

有文本文件内容如下:

?
1
2
3
4
5
6
7
8
9
10
DT 20180101000000
WT -1.1
SL  31.4
WL 203
DT 20180101000000
AT -4.1
BP 1023.7
HU 26
RN     99999.9
WS 1.9 92 2.0 94 3.4 79 2111 4.6 83 2103

使用正则表达式 WT\s+(?<WT>.+)$ ,结果是拿不到匹配值。原因是读取到的文本内容,里面有好多回车换行符“ \r\n ”。比如 WT -1.1 这行,实质内容是

WT -1.1\r\n ”,这时行尾符“$”就不起作用了。应该说,是直接读取文件内容,使用正则表达式匹配,就不起作用了。

将正则表达式改为:

?
1
WT\s+(?<WT>.+)\r\n

总结

以上所述是小编给大家介绍的C#中正则表达式与回车换行符问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://blog.csdn.net/leftfist/article/details/79702591