我正在尝试验证"KQkq" <or> "-",在第一种情况下,任何字母都可能丢失(期望所有字母,在这种情况下应该是"-")。字符的顺序也很重要。
法律示例的快速示例如下:
-Kkqq
这是为了进行国际象棋FEN验证,我已经使用以下方法验证了前两部分:。
var fen_parts = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1";
fen_parts = fen_parts.split(" ");
if(!fen_parts[0].replace(/[1-8/pnbrqk]/gi,"").length
&& !fen_parts[1].replace(/[wb]/,"").length
&& !fen_parts[2].replace(/[kq-]/gi,"").length /*not working, allows KKKKKQkq to be valid*/
){
//...
}
但是简单地使用/[kq-]/gi验证第三部分允许引入太多东西,这里有一些非法示例的快速示例:
KKKKQkq(有不止一个K)QK(顺序不正确)