|
|
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Делаю небольшую проверку: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Код: plaintext Думал, проблема в выражении. Проверил на PHP - работает мгновенно даже с большими текстами... Понятно, что JS-проверка помедленнее будет, но не настолько же, чтобы браузер просто повисал... Может проблема в другом?.. Если кто знает, поделитесь мыслями, пожалуйста... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 09:31 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Варианты решения типа "если пользователь ввел всякую хрень, то и пусть зависнет - сам виноват" не интересуют... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 09:33 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Попробуйте составить анализ строки по другому. Если Вам необходимо парсить каждое слово в строке, попробуйте разбить строку на слова и парсить каждое по-отдельности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 16:25 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вот такой файл нормально отрабатвает. Можете выложить файл, который виснет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 17:28 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Если я правильно понял условие /^([а-яА-Я]|\s)+(\.)?$/ или точнее /^[а-яА-Я] ([а-яА-Я]|\s)+ (\.)?$/ Что означает в начале у Вас ( )? - не понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2008, 19:18 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
belugin Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Вот такой файл нормально отрабатвает. Можете выложить файл, который виснет? Это действительно отрабатывает нормально. А вот, если добавить дефис, то начинаются тормоза... Такая конструкция (дефис недалеко от начала строки) работает уже заметно дольше (секунды): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2008, 06:19 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Код: plaintext apapacyЧто означает в начале у Вас ( )? - не понял По сути это означает пробел между "словами". Весь остальной "кусок" - проверка на правльное слово с возможной точкой в конце. Изначально задача - проверить на корректность ввода русских ФИО пользователя. Иванов Иван Иванович, Иванов И. И. и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2008, 06:24 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
mrJustПопробуйте составить анализ строки по другому. Если Вам необходимо парсить каждое слово в строке, попробуйте разбить строку на слова и парсить каждое по-отдельности.Уже делаю анализ по-другому, но покоя не дает вопрос о том, что ж это браузеры так обрабатывают регулярные выражения... То же самое на PHP делается практически мгновенно даже на больших текстах... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2008, 08:33 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Вот такое РВ работает нормальн /^[А-Яа-я]+( [А-Яа-я]+)*\.?$/ -----------------| здесь пробел В Вашем варианте, я думаю, циклит конструкция +$. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2008, 20:27 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Прошу прощения. Не учел случая Фамилия И. О.. Вот так /^(( ?[А-Яа-я]+\.?)*)$/ А циклит и начальный ^ и конечный $ - поэтому появились дополнительные скобочки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2008, 20:34 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Еще раз, не * , а + /^(( ?[А-Яа-я]+\.?)+)$/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2008, 20:36 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Да, спасибо, новое выражение сочинил. Проблема просто в том, почему же браузеры на этом зависают... Ведь, в принципе-то, все должно работать... Более того, Перл и ПХП отрабатывают это на "УРА"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2008, 02:17 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Мое новое выражение Код: plaintext Я уже успел даже обрадоваться разок, но потом заметил - дефисы все убрал... apapacy, Ваше выражение тоже зависает, если в конце стро есть слова с дефисами. Например: инженер программист группы разработки и поддержки интернет-приложений Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2008, 02:33 |
|
||
|
Зависание при проверке на соответствие регулярному выражению
|
|||
|---|---|---|---|
|
#18+
Сорри. Вернулся к своему предпоследнему варианту и чуть подправил. Проверил под Фоксом. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2008, 19:41 |
|
||
|
|

start [/forum/topic.php?fid=22&fpage=343&tid=1456801]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 269ms |
| total: | 405ms |

| 0 / 0 |
