Это крайне специфичный c сценарий, но я здесь перепутал синтаксис, и у меня возникли проблемы с поиском оптимального / функционального способа сделать это. Я объясню: допустим, у меня есть строка, отформатированная следующими способами: «My-Test-docID», «My-Test-docID-01», «My-Test-docID-02», «My-Test- docID-03 ", et c.
Вот что я пытаюсь сделать sh. Я хочу сначала проверить, заканчивается ли строка "- [2 di git number]" или нет. Если числа существуют в конце, они всегда будут после дефиса, за которым следуют 2 цифры, такие как «-01», «-02», «-10» и т. Д. c.
Пример : Если строка «My-Test-docID», то я хотел бы изменить ее на «My-Test-docID-01».
Если строка заканчивается цифрами, тогда я хочу увеличить их на 1.
Пример: Если строка заканчивается на «-01», я хочу изменить ее на «-02», чтобы «My-Test-docID-01» "становится" My-Test-docID-02 ". Если он заканчивается на «-02», он становится «-03» таким образом, что «My-Test-docID-02» становится «My-Test-docID-03», et c.
У меня есть некоторые псевдокодовые идеи, но не могу понять точный синтаксис. Моя интуиция подсказывает мне сначала проверить окончание с помощью регулярного выражения, а затем, если число существует, определить, что представляют собой последние два числа, и увеличить на 1. То, что я собираюсь выписать, определенно не оптимально, но оно показывает, что До сих пор я был в состоянии придумать и, надеюсь, объяснить сценарий более четко.
if (docId.endsWith("-[0-9][0-9]")) {
//last 2 digits of docId +=1
else {
docId = docId + "-01"
}
У меня такое чувство, что в конечном итоге это будет выглядеть намного сложнее, но это, по сути, то, что я пытаюсь чтобы сделать, и я ищу правильный синтаксис для условия if и оператора if.
Примечание: если это проще, число в конце не должно включать ноль при обстоятельствах меньше 10 как "-01" и "-02", но я думаю, что это может быть проще структурно. Реально они никогда не будут больше 09, НО это не гарантировано, и я хотел бы написать этот код как Dynami c, как я могу. Это, как говорится, больше, чем «-99» на самом деле даже невозможно, поэтому я не беспокоюсь об этом.