@Xandiyam Название функции не может содержать пробелов:
70a315da-be02-4f60-9677-d6af036a68d4-изображение.png
Обнаружил ошибку, при работе с регуляркой, которая полностью останавливает работу БАС
Версия БАС 21.5.2
Ось, Windows 7, x64
Файл проекта при котором происходит ошибка 0_1546696993210_error.xml
Сама регулярка
(?:[А-ЯA-Z](?:(?:т.п.|т.д.|пр.)|[^?!.\(]|\([^\)]*\))*[.?!])
разбивает текст на предложения, но если текст состоит из длинных участков перечислений, и она не может найти переложения. Короче, тогда БАС и крашится, видать памяти не хватает или хз.
Чито делать? Как разбить предложения не разбив БАС? :)
https://regex101.com/ пишет Catastrophic backtracking
Ну, короче понятно что ошибка регулярки. Другой вопрос, что БАС по идее не крашится должен в такой ситуации а отдавать ошибку, Catastrophic backtracking. Ибо вылавливать это было ой как не просто, у меня 30 потоков, в каждом свой текст, ошибка валится раз в пол часа. Короче, тот еще гемор.
@samael_96 said in Критическая ошибка. БАС полностью закрывается/вылетает.:
https://regex101.com/ пишет Catastrophic backtracking
Ну, короче понятно что ошибка регулярки. Другой вопрос, что БАС по идее не крашится должен в такой ситуации а отдавать ошибку, Catastrophic backtracking. Ибо вылавливать это было ой как не просто, у меня 30 потоков, в каждом свой текст, ошибка валится раз в пол часа. Короче, тот еще гемор.
Ни разу не слышал про ошибку Catastrophic backtracking, пост скинул @support 'y.
@fox said in Критическая ошибка. БАС полностью закрывается/вылетает.:
@samael_96 said in Критическая ошибка. БАС полностью закрывается/вылетает.:
https://regex101.com/ пишет Catastrophic backtracking
Ну, короче понятно что ошибка регулярки. Другой вопрос, что БАС по идее не крашится должен в такой ситуации а отдавать ошибку, Catastrophic backtracking. Ибо вылавливать это было ой как не просто, у меня 30 потоков, в каждом свой текст, ошибка валится раз в пол часа. Короче, тот еще гемор.Ни разу не слышал про ошибку Catastrophic backtracking, пост скинул @support 'y.
Fox. У меня одна надежда на вас. Вы вроде с регулярками очень хорошо знакомы.
Как бы ее допилить вот эту регу
(?:[А-ЯA-Z](?:(?:т.п.|т.д.|пр.)|[^?!.\(]|\([^\)]*\))*[.?!])
Чтобы она разбивала по предложениям, еще и брала переносы строк? Я так понял что текст который я пытаюсь ей разбить:
<li>Самоппроизвольное закрытие BAS</li>
<li>Происходит самоппроизвольный краш BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Происходит самоппроизвольный краш BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Происходит самоппроизвольный краш BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Происходит самоппроизвольный краш BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Происходит самоппроизвольный краш BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Происходит самоппроизвольный краш BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>Самоппроизвольное закрытие BAS</li>
<li>
Слишком длинный, и она начинает тупо перебирать все варианты, и если бы не вылет, то система тупо бы зависла со 100% использованием проца.
@samael_96 said in Критическая ошибка. БАС полностью закрывается/вылетает.:
Как бы ее допилить вот эту регу
Я бы упростил эту регулярку, ошибка Catastrophic backtracking происходит если на regex101.com выбрать язык php

Но если выбрать Javascript, то ошибка сменится на Timeout

Попробуйте
([А-ЯЁ][^\.]+\.)
Либо предоставьте по больше вариантов исходного текста.