Javascript 正则表达式匹配模式,如angular js中的2:1

Javascript 正则表达式匹配模式,如angular js中的2:1,javascript,regex,angularjs,Javascript,Regex,Angularjs,我需要验证textfield,用户应该只输入2:1的模式,即number1冒号number2,其中number1应该大于number2。 我在项目中使用Angular js:当我选择Buy x get y free时,输入字段应该接受上述模式 <select class="form-control" id="offerType" ng-model="addOffer.discount"> <option value="Buy x get y free"&

我需要验证textfield,用户应该只输入2:1的模式,即number1冒号number2,其中number1应该大于number2。 我在项目中使用Angular js:当我选择Buy x get y free时,输入字段应该接受上述模式

<select class="form-control" id="offerType" ng-model="addOffer.discount">
            <option value="Buy x get y free">Buy x get y free</option>
            <option value="Basket level offer - 100$ for 5">Basket level offer - 100$ for 5</option>
            <option value="Basket level offer - Product free">Basket level offer - Product free</option>
            <option value="Discount %">Discount %</option>
            <option value="Discount $">Discount $</option>
</select>    

<input type="text" required class="form-control" id="" placeholder="Enter Discount Value" ng-model="addOffer.value">

买x送y
篮级报价-5人100美元
篮子级优惠-产品免费
折扣%
折扣$

在正则表达式中不能真正做到这一点,因为它没有数字比较功能。不过,在控制器中或使用自定义指令验证这一点非常容易


您至少可以验证此模式是否输入了一个比率
\d+:\d+
,但检查第一个数字是否大于第二个数字。

我们是否可以使用正则表达式检查2:1的模式?忘记comparisonyeah,使用
\d+:\d+
检查它。