| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- declare namespace ip {
- interface Options {
- /**
- Only match an exact string. Useful with `RegExp#test()` to check if a string is an IP address. *(`false` matches any IP address in a string)*
- @default false
- */
- readonly exact?: boolean;
- /**
- Include boundaries in the regex. When `true`, `192.168.0.2000000000` will report as an invalid IPv4 address. If this option is not set, the mentioned IPv4 address would report as valid (ignoring the trailing zeros).
- @default false
- */
- readonly includeBoundaries?: boolean;
- }
- }
- declare const ip: {
- /**
- Regular expression for matching IP addresses.
- @returns A regex for matching both IPv4 and IPv6.
- @example
- ```
- import ipRegex = require('ip-regex');
- // Contains an IP address?
- ipRegex().test('unicorn 192.168.0.1');
- //=> true
- // Is an IP address?
- ipRegex({exact: true}).test('unicorn 192.168.0.1');
- //=> false
- 'unicorn 192.168.0.1 cake 1:2:3:4:5:6:7:8 rainbow'.match(ipRegex());
- //=> ['192.168.0.1', '1:2:3:4:5:6:7:8']
- // Contains an IP address?
- ipRegex({includeBoundaries: true}).test('192.168.0.2000000000');
- //=> false
- // Matches an IP address?
- '192.168.0.2000000000'.match(ipRegex({includeBoundaries: true}));
- //=> null
- ```
- */
- (options?: ip.Options): RegExp;
- /**
- @returns A regex for matching IPv4.
- */
- v4(options?: ip.Options): RegExp;
- /**
- @returns A regex for matching IPv6.
- @example
- ```
- import ipRegex = require('ip-regex');
- ipRegex.v6({exact: true}).test('1:2:3:4:5:6:7:8');
- //=> true
- ```
- */
- v6(options?: ip.Options): RegExp;
- };
- export = ip;
|