Мы столкнулись с некоторыми проблемами с этим регулярным выражением.Регулярное регулярное выражение имеет небольшую ошибку
/\(\((((?>[^\(\(\)\)]+)|(?R))*)\)\)/x
Используется для «вращения» текстов. Когда у нас есть предложение типа «((Мы ((люблю | как)) эту рубашку (размер xl))), то он не может выполнить это право. Из-за трех скобок в конце предложения (потому что первая из последних трех скобок в конце принадлежит самому тексту).
Как это должно работать: регулярное выражение должно получить первые 2 круглые скобки, если оно имеет 3 или более в начале, в конце последних 2, когда в конце есть 3 или более круглых скобок. Это возможно???
Имейте в виду, что он отлично работает на многоуровневом уровне, поэтому что-то вроде «((этот (рубашка свитер))))« хорошо работает (см. 4 круглых скобки в конце?). Таким образом, это происходит не так, когда скобки, которые принадлежат В тексте, начинаются прямо за стартовыми скобками для вращения ИЛИ заканчиваются прямо перед конечными скобками.
Вы мой герой! Последнее регулярное выражение ('\ (\ (((:: [^()] | ((? R)) | (\ ((?: [^()] | (? 3)) *))) *) \) \) '), работает как шарм !!!! –
@ ErikVandeVen Я просто попытался помочь ^^; Я рад, что это сработало для вас :) – Jerry