我试图编写正则表达式来检查字符串中的项是否符合某个条件:
它必须是一个字母后跟一个数字:
'a' then a number 0-7
和
'b' then a number 0-6
例如:
我目前写道:
[a0-7[b0-6]]+
但是这个表达式也验证了" a7b7"和" 60"。
我也尝试过:
[a\\d&&[^8-9]]+
这捕获" a7"和" 60&#34 ;;我不知道要添加什么来捕获" b6"部分并忽略" 60"
编辑:要添加字符串顺序不固定的事实,可能是" a7b6"," b3a6"或" b2a1"等
答案 0 :(得分:2)
从您的示例中,您只是在搜索
single gameObject
是a,后跟0到7之间的数字,后跟b和0到6。
允许其中的多个链接在一起,如
您可以对它们进行分组,然后编写
a[0-7]b[0-6]
你的子结构[b0-6]例如意味着b或0或1,...或6,而不是b后跟某些东西。
我从未见过像(a[0-7]b[0-6])+
这样的嵌套集,有时看起来很有用(a-z,除了......) - 我怀疑它们是否有效。
答案 1 :(得分:0)
[a-z[^np]]
是字符类的语法,允许内部的任何一个字符。你想要一些不同的东西:
[…]
(a[0-7]|b[0-6])+
是群组的语法。
答案 2 :(得分:0)
你需要理解[]的含义。 现在当你写[abc]时,暗示集合定义可以匹配字母a或b或c。
[a0-7 [b0-6]] +表示多次出现a / 0-7和b / 0-6。 我建议你再次阅读正则表达式文档。