EmEditor allows you to use number range expressions as search expressions.

To use a number range in Find, Replace, Find in Files, Replace in Files, or Advanced Filter dialog box select Number Range from the Mode drop-down list box.

To use a number range in Find, Replace, FindInFiles, ReplaceInFiles, or Filter methods of macros, include the eeExFindNumberRange flag to the ExFlags parameter.

A number range is expressed as an interval notation. A bracket indicates an included endpoint, and a parenthesis indicates an excluded endpoint. If both numbers do not include a decimal point, the method matches only integers. Minimum and/or maximum number may be omitted to mean negative and/or positive infinity. The number format depends on the locale specified in the Locale drop-down list box in the Sort page of the Customize dialog box. In some locales (such as German), a comma (',') is used to denote a decimal point, and in that case, a space before and after the separator comma is necessary to avoid ambiguity.

As of v19.6, a number range can specify a set of numbers with a specified increment. An increment can be specified as the third parameter "c" in [a , b , c] or (a , b , c).

For instance,

Number Range |
Meaning |

[1 , 9] |
matches integers 1, 2, 3, ..., 9. |

[ , 9) |
matches any integers less than 9. |

[1.0 , 9.0) |
matches decimal numbers greater than or equal to 1.0, and less than 9.0. |

[ , 1.0) |
matches any decimal numbers less than 1.0 |

(2.0 , ] |
matches any decimal number greater than 2.0 |

[1,0 , 9,0 "," ] |
matches decimal numbers greater than or equal to 1.0, and less than 9.0 using a comma as a decimal point. |

[1 , 9 , 2] |
matches integers 1, 3, 5, 7, 9. |

[1.0.0.0 , 1.255.255.255] |
matches IPv4 addresses 1.0.0.0 ... 1.255.255.255. |

1.1.1.1/8 |
matches IPv4 addresses 1.0.0.0 ... 1.255.255.255. |

2001:db8::/48 |
matches IPv6 addresses 2001:db8:: ... 2001:db8:0:ffff:ffff:ffff:ffff:ffff. |

[1/1/2021 , 12/31/2022] |
matches dates 1/1/2021 ... 12/31/2022. |

[1/1/2021 , 12/31/2022 "M/d/yyyy" ] |
matches dates 1/1/2021 ... 12/31/2022 using the "M/d/yyyy" format. |

[13:00:00 , 18:59:59 "HH:mm:ss" ] |
matches times 13:00:00 ... 18:59:59 using the "HH:mm:ss" format. |

[2021-01-01 00:00:00 , 2022-12-31 23:59:59 "yyyy-MM-dd HH:mm:ss" ] |
matches dates and times 2021-01-01 00:00:00 ... 2022-12-31 23:59:59 using the "yyyy-MM-dd HH:mm:ss" format. |

The following formats can be used to make date and/or time formats.

Format |
Meaning |

yy |
Year represented only by the last two digits. |

yyyy |
Year represented by four digits. |

M |
Month as digits without leading zeros for single-digit months. |

MM |
Month as digits with leading zeros for single-digit months. |

MMM |
Abbreviated month name, for example, "Nov" in English. This format may not be available if the current locale does not provide month names. |

MMMM |
Month name, for example, "November" for English, and "Noviembre" for Spanish. This format may not be available if the current locale does not provide month names. |

d |
Day of the month as digits without leading zeros for single-digit days. |

dd |
Day of the month as digits with leading zeros for single-digit days. |

HH:mm |
Hours and minutes separated by a colon; 24-hour clock. |

HH:mm:ss |
Hours, minutes and seconds separated by a colon; 24-hour clock. |

| |
Or. Use this to combine multiple formats, allowing the number range expression to match either formats. |

•Replacement Expression Syntax