停止regex删除小数点
本文关键字:小数点 删除 regex 停止 | 更新日期: 2023-09-27 18:28:28
在我的公式中,我试图删除regex代码中提到的特定单词后面出现的第一个单词。例如:
句中:
你好,我的名字是罗杰
我用这个正则表达式提取单词"罗杰":
Regex reg3 = new Regex("is''s''w+");
MatchCollection match3 = reg3.Matches(result);
foreach (Match match in match3)
{
var val = match.Value;
val = val.Replace("is", "");
val = val.Trim();
}
但在这样的情况下:
我的答案是3.05
当我应用相同的正则表达式时,我最终得到的是:
3
这是因为正则表达式删除了"is"之后的所有字符,我如何更改正则表达式,使其在如上所述的情况下保持decimal
数字不变并打印3.05?
它在打印第一个数字后停止,因为下面的.
不是单词字符。为了匹配文字点,您需要将'w
和.
放在一个字符类中。
Regex reg3 = new Regex("is''s[.''w]+");
或
Regex reg3 = new Regex(@"is's[.'w]+");