C#中正则表达式与回车换行符问题
程序员文章站
2022-04-25 21:02:30
c#中,读取文本文件内容,里面往往有许多回车换行符(“\r\n”),虽然一般不可见,但却实实在在的存在。这时候,使用正则表示式进行匹配,需要考虑其存在。今天就遇到这样一个问...
c#中,读取文本文件内容,里面往往有许多回车换行符(“\r\n”),虽然一般不可见,但却实实在在的存在。这时候,使用正则表示式进行匹配,需要考虑其存在。今天就遇到这样一个问题:
有文本文件内容如下:
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
”,这时行尾符“$”就不起作用了。应该说,是直接读取文件内容,使用正则表达式匹配,就不起作用了。
将正则表达式改为:
wt\s+(?<wt>.+)\r\n
总结
以上所述是小编给大家介绍的c#中正则表达式与回车换行符问题,希望对大家有所帮助