Я пытаюсь найти шаблон числа / символа внутри строки.
Строка может выглядеть следующим образом
"any text CA-2019-6-000000 any text"
"any text KA 2019-2-929029" // note: no "-" between the "KA and 2019"
"KA-2019-11-929029"
Что я могу точно сказать:год, как 2000/2019/2055
.После года всегда стоит знак минус, два возможных числа от 1 до 12 и еще один знак минус.
Который является месяцем.
И после "-<num>-
" - это длинное число из 6 цифр, которое может быть не менее 000000
или не более 999999
До года может быть макс.строка из двух символов, за которой следует минус.Между этими двумя символами длинной сильной может быть знак минус или пробел.
Примеры:
"AA 2019"
"ZZ-2018"
Я обнаружил, что могу получить 6 цифр с /[0-9]{6}/
.
Год /[0-9]{4}
.Я хотел бы добавить, что это может быть только между 2000 and 2100
И я могу получить число между двумя знаками минус с помощью: /(?<=\-)(.*?)(?=\-)/
или
/\-(.*?)\-/
Например, у меня была идея найти число между двумя символами "-" и сохранить его в переменной.Затем, чтобы сказать, что я хочу, чтобы числа между этими числами после этой переменной составляли 6 символов в длину и между 000000 и 999999.
Аналогичная игра с этим годом.Я хотел бы сказать, что я получу число, которое находится перед переменной с «-». Максимальная длина составляет 4 числа и находится между 2000 и 2100.
Если я сохраню год впеременная, которую я могу теоретически сказать, я ищу две буквы, которые предшествуют "- $ yearvariable" или "[пробел] $ yearvariable