没有000的3位数的正则表达式

时间:2016-01-09 18:18:27

标签: regex google-form

我想在Google表格上写一个正则表达式

1到9之间的第一个字符 第二和第三个字母(大写字母) 接下来的3个字符应该是541或001但不是000

的数字

此表达式也取000

[1-9][A-Z]{2}[0-9]{3}

3 个答案:

答案 0 :(得分:6)

使用替换:

[1-9][A-Z]{2}([1-9][0-9][0-9]|[0-9][1-9][0-9]|[0-9][0-9][1-9])

请参阅regex demo

下面,

  • [1-9] - 匹配19
  • 的1位数字
  • [A-Z]{2} - 两个大写ASCII字母
  • ([1-9][0-9][0-9]|[0-9][1-9][0-9]|[0-9][0-9][1-9]) - 3种替代品:
    • [1-9][0-9][0-9] - 以1
    • 开头的3位数字
    • [0-9][1-9][0-9] - 中间有1的3位数字
    • [0-9][0-9][1-9] - 以1
    • 结尾的3位数字

enter image description here

另请参阅this regex demo

答案 1 :(得分:3)

使用负向前瞻以避免最后的三重零:

[1-9][A-Z]{2}(?!000)[0-9]{3}

答案 2 :(得分:0)

使用交替运算符     [1-9] [1-9] [1-9] | 0 [1-9] [1-9] | 00 [1-9] | 0 [1-9] 0