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