如何识别二进制数中的奇数1

Mal*_*uri 0 regex tcl

如何识别我的二进制数字二进制数中的奇数1,即每个奇数位是二进制数1

1 1 0 0 1 0 0 0 1 0   1  0 1  0  1   1  1 1  1  1  0  1  1  0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
11010101010101111110110
11101101010101100011011
11111100110101010111101
Run Code Online (Sandbox Code Playgroud)

我想得到输出什么位是一个奇数1一个我得到使用基本正则表达式输出每个字符串像这样

1 1 1  1  1 1  1  1  1
1 5 9 11 13 15 17 19 23
Run Code Online (Sandbox Code Playgroud)

像这样我想从每个二进制字符串中获取输出

rob*_*yaw 7

我将问题解释为"查找给定的二进制数是否包含1的奇数"**.此正则表达式将匹配所有二进制数与偶数 1:

^0*(?:10*10*)*$
Run Code Online (Sandbox Code Playgroud)

取消匹配结果以获得预期结果.

**我知道,可能不太可能,但嘿....

编辑:根据OP的输入进行验证,如下所示:

110010001010101111110110 - MATCH (even number of 1's)
11010101010101111110110  - NO MATCH (odd number of 1's)
11101101010101100011011  - MATCH (even number of 1's)
11111100110101010111101  - MATCH (even number of 1's)
Run Code Online (Sandbox Code Playgroud)