数字范围表达式语法

EmEditor 让你能把数字范围表达式作为搜索表达式。

要在 查找替换在文件中查找在文件中替换,或 高级筛选 对话框中使用数字范围,请到 模式 下拉列表框下选择 数字范围

要在 FindReplaceFindInFilesReplaceInFiles,或 Filter 的宏方法中使用数字范围,请在 ExFlags 参数中包括 eeExFindNumberRange 标志。

数字范围用区间表示。方括号表示包含起始或结尾数字的端点,圆弧括号表示排除起始或结尾数字的端点。如果区间中的数字都不包含小数点,则该方法仅匹配整数。当表示负数或正数无穷大时,可以省略最小或最大值。数字格式取决于 自定义 对话框中 排序 页面区域设置 下拉列表框中指定的区域。在某些语言环境(例如德语)中,逗号(',')用于表示小数点,在这种情况下,有必要在分隔符逗号之前和之后插入一个空格来避免歧义。

从 v19.6 开始,数字范围可以指定一组具有指定增量的数字。增量可以用第三个参数指定,比如在 [a , b , c] 或 (a , b , c) 中的“c”。

例如,

数字范围

含义

[1 , 9]

匹配整数 1,2,3,...,9。

[ , 9)

匹配任何小于 9 的整数。

[1.0 , 9.0)

匹配任何大于或等于 1.0,并且小于 9.0 的小数。

[ , 1.0)

匹配任何小于 1.0 的小数。

(2.0 , ]

匹配任何大于 2.0 的小数。

[1,0 , 9,0 "," ]

匹配用逗号作为小数点,大于或等于 1.0 且小于 9.0 的十进制数。

[1 , 9 , 2]

匹配整数 1,3,5,7,9。

[1.0.0.0 , 1.255.255.255]

匹配 1.0.0.0 ... 1.255.255.255 之间的 IPv4 地址。

1.1.1.1/8

匹配 1.0.0.0 ... 1.255.255.255 之间的 IPv4 地址。

2001:db8::/48

匹配 2001:db8:: ... 2001:db8:0:ffff:ffff:ffff:ffff:ffff 之间的 IPv6 地址。

[1/1/2021 , 12/31/2022]

匹配 1/1/2021 ... 12/31/2022 之间的日期。

[1/1/2021 , 12/31/2022 "M/d/yyyy" ]

用 "M/d/yyyy" 格式匹配 1/1/2021 ... 12/31/2022 之间的日期。

[13:00:00 , 18:59:59 "HH:mm:ss" ]

用 "HH:mm:ss" 格式匹配 13:00:00 ... 18:59:59 之间的的时间。

[2021-01-01 00:00:00 , 2022-12-31 23:59:59 "yyyy-MM-dd HH:mm:ss" ]

用 "yyyy-MM-dd HH:mm:ss" 格式匹配 2021-01-01 00:00:00
 ... 2022-12-31 23:59:59 之间的日期和时间。

日期和时间格式

以下格式可用作日期和/或时间格式。

格式

含义

yy

用最后两位数字表示的年份。

yyyy

用四位数字表示的年份。

M

月份数字,个位数月份不带前导零。

MM

月份数字,个位数月份带前导零。

MMM

缩写月份名称,例如英语中的 "Nov"。如果当前语言环境不支持非数字月份名称,则此格式可能不可用。

MMMM

月份名称,例如英语中的 "November",西班牙的 "Noviembre"。如果当前语言环境不支持非数字月份名称,则此格式可能不可用。

d

以数字表示的月份中的某天,个位数天数不带前导零。

dd

以数字表示的月份中的某天,个位数天数带前导零。

HH:mm

以冒号分隔的小时和分钟;24 小时制。

HH:mm:ss

以冒号分隔的小时、分钟和秒数;24 小时制。

|

或。用它来组合多种格式,允许数字范围表达式匹配任何一种格式。

请同样参考