字符串中正价的正则表达式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串中正价的正则表达式相关的知识,希望对你有一定的参考价值。

我正在尝试编写一个正则表达式来检查字符串中是否有确切的价格。

我创建的用于特定情况的正则表达式是

.*?0,00

当我试图捕获价格恰好是0.00欧元时。

但是我遇到了价格问题,例如60,00欧元等,因为它仍然与0.00匹配。

我将如何创建正则表达式以精确匹配0,00?

答案

您可以使用环视方法断言0,00之前的字符不是数字,而0,00之后的字符不是数字。

(?<!d)0,00(?!d)

Demo

另一答案

您的模式.*?0,00不包含边界,将匹配任何字符,除了换行0+次非贪婪,然后匹配0,00

您可以使用word boundaries 

0,00

或者如果支持负向前瞻和向后看,则可以断言左侧和右侧的内容不是非空格字符S,不会在,0,00,中获得部分匹配。>

(?<!S)0,00(?!S)

以上是关于字符串中正价的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

asp.net 使用正则表达式验证包含打开/关闭括号片段的属性字符串

循环通过 python 正则表达式匹配

正则表达式

JAVA正则表达式怎么匹配所有符合要求的子字符串

正则表达式的贪婪和非贪婪模式

攻破难啃的骨头-正则表达式(转)