[英]C# regex how to exclude from string
我在 c# 上处理正则表达式,我只需要从字符串中获取一部分并排除所有其余部分。
var file = "XD_ADX_W_CGX_CLAIMS_2021_07_11.TXT";
我只想从上面的字符串中获取“CGX_CLAIMS”,XD_ADX 是可变的, W是静态的,2021_07_11 也是可变的
我能够使用以下正则表达式提取日期:
Regex r = new Regex(@"[_]\d{4}[_]\d{2}[_]\d{2}[.]", RegexOptions.RightToLeft);
现在我只需要提取 CGX_CLAIMS (即变量......可能是其他字符串)......知道吗?
谢谢!!
由于_W_
是静态的,您可以使用
_W_(.*?)_\d{4}_\d{2}_\d{2}\.
请参阅正则表达式演示。 详情:
_W_
- 一个已知的子串(.*?)
- 第 1 组:除换行符以外的任何零个或多个字符,尽可能少_\\d{4}_\\d{2}_\\d{2}\\.
- _
,四位数字, _
,两位数字, _
,两位数字和一个.
字符。在 C# 中,您可以使用
var output = Regex.Match(text, @"_W_(.*?)_\d{4}_\d{2}_\d{2}\.")?.Groups[1].Value;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.