[英]Regex remove carriage return from end of lines if it exists
数据如下所示:
0.43,0.57,0.71,0.29,0.71,1.00,0.57,1.00\r
0.43,0.57,0.71,0.29,0.71,1.00,0.57,1.00
0.43,0.57,0.71,0.29,0.71,1.00,0.57,1.00\r
我想提取回车符(在上面的示例中用\\r
标记)。 我一直在尝试使用gm
和捕获组:
(.*)(?:\\r)$
但这仅匹配带有\\r
的行。 我以为解决方案将添加一个?
$
之前,但这不起作用。
演示: https : //regex101.com/r/jArLdS/1
干杯
如果要匹配\\r
以外的所有行- 回车 -使用
[^\r\n]+
这是一个否定的字符类 ( [^...]
),它匹配一个或多个\\r
和\\n
以外的(由于+
量)字符。
便携式解决方案。
(^.*?)(\\\\r)(\\r\\n|\\n)
这是三个捕获组,从左到右,从1
开始,而不是0
。
用捕获组1和3替换您的字符串,跳过2。
对于大多数使用捕获组的语言,捕获组通常在语法上类似于\\1
或$1
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.