春のメーラー:
私は自分の正規表現は、ワイルドカード*今では私自身の正規表現と一緒にIPと一致するようにしようとしています:
^((((25 [0-5] | 2 [0-4] [0-9] |?[01] [0-9] [0-9])\ *){3}(25 [0 -5] | 2 [0-4] [0-9] | [01] [0-9] [0-9]))|?(((25 [0-5] | 2 [0-4] [0-9] |?。[01] [0-9] [0-9])\){1,3} \ *))$
私が望むように、私はEXこの条件指定した正規表現を与えたい働いていません:
192.168.1.1 - >有効
192.168.1。* - >有効
192.168 * * - 。。>有効
192 * * * - 。。。>有効
192.168 * 1 - 。。>無効
192 * 1.1 - 。。>無効
192 * * 1 - 。。。>無効
* .168.1.1 - >無効
第四鳥:
1つのオプションは、3桁またはAのいずれかで3つの以下のドットのためのアサートに肯定先読みを使用することです *
一致するときは、作ることができる*
最後の部分とオプションを。
^(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(?=(?:\.(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])|\*)){3}$)(?:\.(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9]))*(?:\.\*)*$
別のオプションは、すべての選択肢をスペルアウトすることです:
^(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])|(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.\*|(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.\*\.\*|\*\.\*\.\*)$