正则表达式:匹配以 4-9 开头的数字?
Regex: Matching digits that start with 4-9?
下面是我当前的命令和输出。问题是以 2 开头的行。我怎样才能合并以仅匹配以 4-9 开头的行?
grep -o -P '(?:(?<!\d)\d{8}(?!\d))' * | sort -u
20100101
71160868
71161452
grep 源是一封电子邮件,所以这里 post 非常混乱。
您可以使用:
grep -oP '(?:(?<!\d)[4-9]\d{7}(?!\d))' * | sort -u
[4-9]
只有当第一个数字在 4 到 9 之间后跟任何 7 个数字时才会匹配。
下面是我当前的命令和输出。问题是以 2 开头的行。我怎样才能合并以仅匹配以 4-9 开头的行?
grep -o -P '(?:(?<!\d)\d{8}(?!\d))' * | sort -u
20100101
71160868
71161452
grep 源是一封电子邮件,所以这里 post 非常混乱。
您可以使用:
grep -oP '(?:(?<!\d)[4-9]\d{7}(?!\d))' * | sort -u
[4-9]
只有当第一个数字在 4 到 9 之间后跟任何 7 个数字时才会匹配。