|
|
|
Как получить значение группы в регулярке?
|
|||
|---|---|---|---|
|
#18+
В строке "хххххххх2020-01ххххххххх", где "х" означает любой символ (в основном буквы) в произвольном количестве, может быть только один (или ни одного) паттерн "dddd-mm" из двух чисел. Надо его вытащить из строки, распарсив на год и месяц. Делаю так (с регуляркой пока плохо знаком): Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Получаю ошибку Project *.exe raised exception class EConvertError with message ''2020-01' is not a valid integer value for Integer type'. Хотя регулярка вроде правильно составлена: одно совпадение, две группы - проверка https://regex101.com/r/qSB4ih/2 В чем моя ошибка? Можно ли получить искомое без использования групп? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2020, 15:42 |
|
||
|
Как получить значение группы в регулярке?
|
|||
|---|---|---|---|
|
#18+
LiYing, А Groups.Count чему равно? И если он только один раз встречается, то почему Matches, а не Match? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2020, 16:21 |
|
||
|
Как получить значение группы в регулярке?
|
|||
|---|---|---|---|
|
#18+
alekcvp LiYing, А Groups.Count чему равно? И если он только один раз встречается, то почему Matches, а не Match? Да, действительно. Заменил. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Так работает, но Groups.Count = 3. Почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2020, 16:40 |
|
||
|
Как получить значение группы в регулярке?
|
|||
|---|---|---|---|
|
#18+
LiYing Так работает, но Groups.Count = 3. Почему? Потому что нулевая группа - это весь захваченный текст, даже в вашем примере на regex101 - точно так же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2020, 16:54 |
|
||
|
Как получить значение группы в регулярке?
|
|||
|---|---|---|---|
|
#18+
alekcvp LiYing Так работает, но Groups.Count = 3. Почему? Потому что нулевая группа - это весь захваченный текст, даже в вашем примере на regex101 - точно так же. Смутил их лог: Match 1 Full match 8-15 2020-01 Group 1. 8-12 2020 Group 2. 13-15 01 Тут 2 группы :) Осталась вторая часть вопроса - можно ли получить искомое без использования групп? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2020, 16:57 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39931862&tid=2038541]: |
0ms |
get settings: |
6ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
40ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 315ms |

| 0 / 0 |
