Различия между двумя регулярными выражениями

Кто-нибудь знает, почему это регулярное выражение:

/^(([a-zA-Z0-9\(\)áéíóúÁÉÍÓÚñÑ,\.°-]+ *)+)$/ 

работает, но этого нет:

 /^(([a-zA-Z0-9áéíóúÁÉÍÓÚñÑ,\.°-\(\)]+ *)+)$/ 

Разница – это место, где скобки … Я пробовал с некоторыми онлайн-тестировщиками PHP регулярных выражений и получил тот же результат. Второй просто не работает …

PHP возвращает:

 preg_match(): Compilation failed: range out of order in character class at offset 44 in... 

Это не критический вопрос, потому что мне удалось заставить его работать, но у меня есть любопытство!

Может быть, символы Юникода что-то меняют?