Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Arpee78
    senior tag

    A kutya---555.jpg a %1 paraméter, igazából még a mappaútvonal is benn van. d:\kutya---555.jpg

    1. MEGOLDÁS:
    SET fileName=%~n1
    //fileName --> kutya---555 csak a név lesz kiterjesztés nélkül

    FOR /f "tokens=2 delims=---" %%i in ("%fileName%") do (set number=%%i)
    //a delimiternél több részre bontja és visszaadja a másodikat.

    2. MEGOLDÁS:
    SET fileName=%1

    SET number=%fileName:*---=%
    //number változó 555.jpg lesz

    SET number=%number:.jpg=%
    //a .jpg-t is levágja number-->555

    3. MEGOLDÁS:
    SET fileName=%~n1

    SET number=%fileName:*---=%
    //number változó 555 lesz

    Az 1. megoldás nem egészen jó. A delims-nél nem egy összefüggő stringet adhatunk meg, hanem csak azon karakterek felsorolását amelyek elválasztóként használnánk.
    A delims=AAA ugyanaz mint a delims=A
    A delims=ABC a stringeket szétbonja A-nál, B-nél, C-nél, meg persze ABC-nél is.

    SET number=%fileName:*---=%
    Ez végülis egy keresés-csere, a fileName változóban megkeresi a --- részt és ami előtte van, majd kicseréli az egyenlőség jel utáni szöveggel, ami itt a példában semmi, azaz a semmire cseréli ki, vagyis törli.

  • cigam
    titán

    A kutya---555.jpg a %1 paraméter, igazából még a mappaútvonal is benn van. d:\kutya---555.jpg

    1. MEGOLDÁS:
    SET fileName=%~n1
    //fileName --> kutya---555 csak a név lesz kiterjesztés nélkül

    FOR /f "tokens=2 delims=---" %%i in ("%fileName%") do (set number=%%i)
    //a delimiternél több részre bontja és visszaadja a másodikat.

    2. MEGOLDÁS:
    SET fileName=%1

    SET number=%fileName:*---=%
    //number változó 555.jpg lesz

    SET number=%number:.jpg=%
    //a .jpg-t is levágja number-->555

    3. MEGOLDÁS:
    SET fileName=%~n1

    SET number=%fileName:*---=%
    //number változó 555 lesz

    Köszi!

Új hozzászólás Aktív témák