I solved this in about 1.5 hours by starting at the top left, entering any string that satisfied at least one condition, then moving on to the next condition and “fixing up” any previous entries. I was fearful that I might arrive at a nearly correct solution that I would have to massively backtrack from, but it didn’t happen - I only needed a few short backtracks. I think the large number of constraints helps a lot.
Spent a similar amount of time... Ended up with a "solution" that breaks 1 constraint. Must have erred somewhere, but backtracking is only leading to other 1-broken constraint outcomes. Sigh.
Oooh, I was stuck because I was insisting on `.(1)(2)(3)(4)\4\3\2\1.` having the middle eight characters mirror each other, which results in a clear contradiction with a few of the crosses.
Thanks for posting the answers. I think I'm done working on it for now, but that one was really bothering me.
Because of the ".*" on either end, it's just having a sequence of 8 somewhere that are mirrored, could be the first 8 or last 8, not strictly the middle 8.
Yeah, sorry for the bad formatting. I probably should've taken the time to make it not markdownify the asterisks. Without them, it is mirroring the middle eight.
I solved this in about 1.5 hours by starting at the top left, entering any string that satisfied at least one condition, then moving on to the next condition and “fixing up” any previous entries. I was fearful that I might arrive at a nearly correct solution that I would have to massively backtrack from, but it didn’t happen - I only needed a few short backtracks. I think the large number of constraints helps a lot.