Я сейчас думаю о том, как лучше express «Максимум два» как регулярное выражение.
str_detect("xxx", "x{0,2}")
дает TRUE
и я понимаю почему. Например из-за первых двух x
. Я хочу регулярное выражение, которое дает FALSE
. str_detect("xxx", "x{0,2}[^x]")
достигает этого, это нормально. str_detect("xxx", "x{0,2}(?!x)")
приводит к TRUE
, я очень удивлен из-за этого. Почему это так?
Можете ли вы вспомнить другие регулярные выражения, которые умнее x{0,2}[^x]
? Я думаю, что все в порядке, но мне интересно, если нет более короткого решения.