在c#字符串正则表达式中查找一个单词,然后查找一个值
本文关键字:一个 查找 然后 单词 正则表达式 字符串 | 更新日期: 2023-09-27 18:14:12
我是正则表达式使用的新手,并且2天我正在搜索如何从字符串中提取特定数据,但没有成功。
这个字符串是一个较长的字符串的一部分,我需要找到一个参数,然后得到它的值:
'rRoll Off = 0.25'rSINE = OFF'rSymbol Rate = 1.000000'rBit Rate = 1.322253
目标:查找参数符号速率并通过c#正则表达式获取其值1.000000(只需要存储值)。
如果有人能帮我解决那个问题,那就太有帮助了。谢谢!
look - behind
使用:
var myRegex = new Regex(@"(?<=Symbol Rate's*='s*)[0-9.]+");
string resultString = myRegex.Match(yourString).Value;
Console.WriteLine(resultString);
- 后面的
(?<=Symbol Rate's*='s*)
断言前面是Symbol Rate
,可选空白,=
,可选空白 -
[0-9.]+
一个或多个数字或句点
- 零长度断言的前向和后向
- 掌握向前看和向后看
这里有一个使用groups…
var foo = "'rRoll Off = 0.25'rSINE = OFF'rSymbol Rate = 1.00000'rBit Rate = 1.322253";
var match = Regex.Match(foo, @"Symbol Rate's*='s*(-?'d+('.'d+)?)");
Console.WriteLine(match.Groups[1]);
现场演示