c# - 使用正则表达式从网页元素的内部文本中提取数字

标签 c# regex

我使用 (?:\[+\.)?\d+ 的正则表达式从网站元素的内部文本中提取数字,内部文本是 $94.99/mo

这行得通,我可以创建一个等于 105.66 的变量。当我将此正则表达式应用于其中包含不同数字值的 innertext 时,将选择所有数字值。

例如

Total Monthly Payment: $94.99 + $9.49 (for ASP) = $104.48/month (plus tax) • Total Cost of Ownership: $104.48 x 12 Months = $1,253.76 (plus tax) • Cost of Lease Services: $350.77

它找到所有的值; 如何修改正则表达式,使其仅找到 9.49 价格?

最佳答案

我会尝试提取这个:+ $9.49 您可以使用以下正则表达式:

@"(?<=\+\s\$)(\d+\.?\d*)
  • (?<=\+\s\$)匹配但不包含 +后跟一个空格,然后是一个 $
  • (\d+\.?\d*)匹配并放入至少一个数字的组中,后跟可选的 .后跟任意数量的数字。

+ . $符号是特殊的正则表达式字符,必须用反斜杠转义。

关于c# - 使用正则表达式从网页元素的内部文本中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35455918/

相关文章:

C#:可以不在抽象类上实现 protected 内部抽象吗?

c# - 在 C# 中构建动态正则表达式

javascript - 正则表达式检查字符串是否是javascript函数?

python - Pybabel extract从html模板中提取关键字时添加额外的单引号

c# - 正则表达式匹配不包含完整的匹配文本

c# - c#有哪些预定义的#if符号?

c# - 如何删除动态创建的按钮

c# - 创建将类型 T 作为键映射到类型 T 实例的字典

c# - 窗口关闭时的线程回调

php - 用括号外的逗号分解字符串