具有多个条件的不同模式的正则表达式
Regex for a different pattern having multiple conditions
我正在寻找一个完全不同条件的正则表达式。我的表情要求-
- 总长度必须为 6、7 或 8 个字符。
- 必须包含空格(space 个字符)。
- 内码,空位右边的部分,必须是3个字符。
- 入站码的第一个字符必须是数字。
- 内码的第二个和第三个字符必须是字母。
- 外码,空位左边的部分,可以是2、3、4个字符。
- 外码的第一个字符必须是字母。
我需要这样的表达方式- BH6 5BG 或 b6 7ba 或 CH11 2ab
字母可以是小写或大写,第一个字符应该是字母,在 space 之后允许三个字符,其中第一个应该是数字。
我制作了仅包含第一个条件的正则表达式 - ^(\d{6}|\d{7}|\d{8})$
我对正则表达式很困惑。有人可以帮我为上述条件构建正则表达式吗?
我相信这会为你做到:
^[a-zA-Z][a-zA-Z0-9]{1,3} \d[a-zA-Z]{2}$
匹配
^
行首
[a-zA-Z]
一个字母字符 - 大写或小写。
[a-zA-Z0-9]{1,3}
一个字母字符 - 大写或小写 - 或一个数字,重复 1-3 次。
</code>一个space</li>
<li><code>\d
一个数字
[a-zA-Z]{2}
一个字母字符 - 大写或小写 - 重复 2 次。
$
行尾
我会用这个:
/^[a-z].{1,3}\s\d[a-z]{2}$/i
细分:
^ #start of line
[a-z] #alpa
.{1,3} #from 1 to 3 of any char
\s #a whitespace char
\d #a digit
[a-z]{2} #2 of any aplha
$ #end of line
i #case insensitive
以下正则表达式应该有效:
^[A-Za-z][A-Za-z\d]{1,3}\s\d[A-Za-z]{2}$
^(?i)[a-z][a-z0-9]{1,3}\s[0-9][a-z]{2}$
(?i)
--> 因为字母可以是小写或大写。
\s
--> 恰好有一个 whitespace/gap.
*我用Java检查过。
我正在寻找一个完全不同条件的正则表达式。我的表情要求-
- 总长度必须为 6、7 或 8 个字符。
- 必须包含空格(space 个字符)。
- 内码,空位右边的部分,必须是3个字符。
- 入站码的第一个字符必须是数字。
- 内码的第二个和第三个字符必须是字母。
- 外码,空位左边的部分,可以是2、3、4个字符。
- 外码的第一个字符必须是字母。
我需要这样的表达方式- BH6 5BG 或 b6 7ba 或 CH11 2ab
字母可以是小写或大写,第一个字符应该是字母,在 space 之后允许三个字符,其中第一个应该是数字。
我制作了仅包含第一个条件的正则表达式 - ^(\d{6}|\d{7}|\d{8})$
我对正则表达式很困惑。有人可以帮我为上述条件构建正则表达式吗?
我相信这会为你做到:
^[a-zA-Z][a-zA-Z0-9]{1,3} \d[a-zA-Z]{2}$
匹配
^
行首[a-zA-Z]
一个字母字符 - 大写或小写。[a-zA-Z0-9]{1,3}
一个字母字符 - 大写或小写 - 或一个数字,重复 1-3 次。</code>一个space</li> <li><code>\d
一个数字[a-zA-Z]{2}
一个字母字符 - 大写或小写 - 重复 2 次。$
行尾
我会用这个:
/^[a-z].{1,3}\s\d[a-z]{2}$/i
细分:
^ #start of line
[a-z] #alpa
.{1,3} #from 1 to 3 of any char
\s #a whitespace char
\d #a digit
[a-z]{2} #2 of any aplha
$ #end of line
i #case insensitive
以下正则表达式应该有效:
^[A-Za-z][A-Za-z\d]{1,3}\s\d[A-Za-z]{2}$
^(?i)[a-z][a-z0-9]{1,3}\s[0-9][a-z]{2}$
(?i)
--> 因为字母可以是小写或大写。
\s
--> 恰好有一个 whitespace/gap.
*我用Java检查过。