首页 > 解决方案 > 正则表达式,用于在开始时不允许空格和值、A、AR 或 Ar

问题描述

^([A-Z]{0,1}|[A-Za-z]{0,2})(\s{0,5})([A-Za-z]{1,5}|[\d]{1,5})([']{0,1})(\s{1})([A-Z]{1,2})([a-z]{0,2})(\s{1,2})([A-Za-z]{1,5}|[\d]{1,5})

有效案例

Mz A Lt 1

Mz B' Lt 4

我正在尝试以下正则表达式,其中有效包含将是:没有值、A、AR 或 Ar,如果第一个没有任何内容,则没有空格,撇号 (') 可选,然后根据后面是否存在任何字母,需要空格撇号。(A、AR 或 Ar 是 ref 对所有字符都有效的示例)

无效的情况类似于 ARrd A Lt 1 或 aa B Lt' 2

规则

a) 1-2 个字母;第二个字母可选小写:Min 0, Max 2

b) SPACE 作为基于字母之前存在的条件要求

c) 1-5 个数字或 1-5 个字母任意组合:最小 1,最大 5

d) 撇号 (') 可选

e) 需要空格 f) 1-2 个字母;第二个字母可选小写:Min 0, Max 2

g) SPACE 作为基于字母存在的有条件要求

h) 1-5 个数字;最小 1,最大 5

但是我的正则表达式也允许我试图避免的所有小写字母,任何人都可以帮助我

标签: javaregex

解决方案


https://regex101.com/r/vho6Tn/24 这适用于所有场景


推荐阅读