我試圖使用正則表達式來驗證文本輸入的爲英寸值的格式爲:正則表達式來驗證輸入英寸值
<input name="widthfield" type="text" ng-pattern="/^([0-9]{1,2}((\'\')?|(\'\'[0-9]\/[0-9]{1,2})*))|([0-9]{1,2}(\.[0-9]{1,2})?)$/" placeholder="ie 18''1/2 or 18.25" ng-model="data.boardWidth" ng-required="true"/>
它不工作,你可以幫我查一下我的正則表達式?
如果我把它分爲兩個部分:
/^([0-9]{1,2}((\'\')?|(\'\'[0-9]\/[0-9]{1,2})*))$/
和
/^([0-9]{1,2}(\.[0-9]{1,2})?)$/
於是他們倆分開工作。
我需要的格式是英寸或十進制英寸 18.25或18''3/4
感謝
方評論:英寸用雙引號而不是兩個單引號表示。 –
您可以使用'\ d'而不是'[0-9]'。然後使用'\ d \ d?'也比'\ d {1,2}'更短' – Druzion
另外,['^ \ d +((\。\ d +)|(\'\'| \「 )(\ d + \/\ d +)?)?$'works](https://regex101.com/r/eV3uS2/1)(如果您使用@ Wiktor的解決方案) – Druzion