String = '11111111111110000000000000000000110000000000000011111111111111111111111111111111110011111111111110000011110000011111111111110000000000011111111111111111010001111111111111111111110011111111111111111111111111110111112111121111111111111111111000011000001011111111111101022111101111001111111111110000001000000111111111111111000000000000011111111111111100011111111001011111111100000000000000000000000000000000100111001000000000000000000011000000000000001111111000000000000000000000000000000000001111100000000000000000000011000000000000000000000010000000000333333333'
我想要一个模式,在前100个字符之后取出10个字符,所以我想有100 - 110,然后我想比较那个字符串,看看长度为10的字符串是否有4个零。
我怎么能只使用Regex呢?我以前用过substring。
2条答案
按热度按时间ndasle7k1#
你可以使用这个:
说明:
^
:匹配字符串的开头,以避免在输入中的任何地方使用该模式.{100}
:匹配100个字符(?= )
:向前看。这并没有捕获,而只是验证了仍然在前面的东西。.{0,6}
:0到6个字符0000
:4个零(.{10})
:10个字符,这一次它们被捕获,并可以根据正则表达式的风格使用\1
或$1
进行引用。igetnqfo2#
上面的答案是完美的。但它匹配所有字符包括前100个。如果忽略前100个,我们可以使用
要只检查前100个字符后的最后10个字符中所需的模式,我们可以使用