тірекке жолды тіркемені пайдаланып, ішкі жолдарға салыңыз

Менде abc; def; ghi; jkl; ........ және т.б. форматтың енгізу жолдары бар. ең кіші рұқсат етілген кіріс жолы - abc , ал белгілердің максималды санына ешқандай шектеу жоқ. Сондай-ақ, әрбір таңбалауыштың ұзындығы 3-ге бекітілмеген. Ол кез келген таңбалар саны болуы мүмкін.

мысалы, america; russia; uae - қабылданған кіріс

Алғашқы үш белгіні алып, жеке қасиеттерін жасағым келеді. Егер 3-тен аз болса, онда тиісті таңбалар NULL болуы керек.

Әлі күнге дейін көптеген қарапайым сөздерді қолданып көрдім (мен онымен ыңғайсыз)

${testprop} contains the input string.

Мен келесі пәрменді пайдаланамын

propertyregex property = «testprop1» input = «$ {testprop}» regexp = «(. *) (\;») */«select =» \ 1 «

бірақ ол жұмыс істемейді. жақсы regex үшін кез келген ұсыныстар !!

0
Регердің жоғарғы жағында 3 таңбадан аз кез келген жолға сәйкес болады. Оны мына жерден оқи аласыз regex101.com/r/kW3vA5
қосылды автор om39a, көзі
Регердің жоғарғы жағында 3 таңбадан аз кез келген жолға сәйкес болады. Оны мына жерден оқи аласыз regex101.com/r/kW3vA5
қосылды автор om39a, көзі
Регердің жоғарғы жағында 3 таңбадан аз кез келген жолға сәйкес болады. Оны мына жерден оқи аласыз regex101.com/r/kW3vA5
қосылды автор om39a, көзі
/(? i) \ b ([\ w] {1,2} (? =;))/
қосылды автор om39a, көзі
кешірім сұраймын, белгішелердің кез-келген таңбалар саны болуы мүмкін және олармен шектелмегенін түсіндірген болар едім 3.
қосылды автор user1856732, көзі
кешірім сұраймын, белгішелердің кез-келген таңбалар саны болуы мүмкін және олармен шектелмегенін түсіндірген болар едім 3.
қосылды автор user1856732, көзі
кешірім сұраймын, белгішелердің кез-келген таңбалар саны болуы мүмкін және олармен шектелмегенін түсіндірген болар едім 3.
қосылды автор user1856732, көзі
om39a: рахмет, бірақ кешіріңіз. ол кіріске сәйкес келмейді.
қосылды автор user1856732, көзі
om39a: рахмет, бірақ кешіріңіз. ол кіріске сәйкес келмейді.
қосылды автор user1856732, көзі
om39a: рахмет, бірақ кешіріңіз. ол кіріске сәйкес келмейді.
қосылды автор user1856732, көзі

6 жауаптар

Егер бұл бар болса, алғашқы үш таңбаны алу үшін бұл тізімді пайдаланыңыз.

/(? i) \ b ([\ w] {3} (? = [\ w] *;)/

Мұнда тексеріңіз

Бұл таңбаны 3 таңбадан аз мәнге ие жолды алу үшін пайдаланыңыз.

/(? i) \ b ([\ w] {1,2} (? =;))/

Мұнда тексеріңіз

0
қосылды
Тек сіздің сұрағыңыздан бұл доза қандай дозаны тексеруге болады? Алғашқы үшті алып тастап, олардан бөлек қасиеттерді жасағым келеді. Егер 3-тен кем болса, онда тиісті таңбалар NULL болуы керек.
қосылды автор om39a, көзі
бұл prop1 , prop2 деп айтайын, «stringa; stringb; stringc; stringd» strb , stringb және stringc мәндері бар prop3 . Егер кіріс жолы «stringa; stringb» болса, онда prop1 және prop2 қасиеттері stringa </> code және stringb NAME
қосылды автор user1856732, көзі
бірақ таңбадан 3-тен астам таңба болуы мүмкін. регистрлеріңізді тексеру үшін пайдаланатын сынақ жолының орнына .. келесіден пайдаланып көріңіз және алғашқы үш таңбалауышын/топтарын «stringa; stringb; stringc; stringd» деп алып тастауға тырысыңыз, «stringa», « stringb «және» stringc «
қосылды автор user1856732, көзі

Егер бұл бар болса, алғашқы үш таңбаны алу үшін бұл тізімді пайдаланыңыз.

/(? i) \ b ([\ w] {3} (? = [\ w] *;)/

Мұнда тексеріңіз

Бұл таңбаны 3 таңбадан аз мәнге ие жолды алу үшін пайдаланыңыз.

/(? i) \ b ([\ w] {1,2} (? =;))/

Мұнда тексеріңіз

0
қосылды
Тек сіздің сұрағыңыздан бұл доза қандай дозаны тексеруге болады? Алғашқы үшті алып тастап, олардан бөлек қасиеттерді жасағым келеді. Егер 3-тен кем болса, онда тиісті таңбалар NULL болуы керек.
қосылды автор om39a, көзі
бұл prop1 , prop2 деп айтайын, «stringa; stringb; stringc; stringd» strb , stringb және stringc мәндері бар prop3 . Егер кіріс жолы «stringa; stringb» болса, онда prop1 және prop2 қасиеттері stringa </> code және stringb NAME
қосылды автор user1856732, көзі
бірақ таңбадан 3-тен астам таңба болуы мүмкін. регистрлеріңізді тексеру үшін пайдаланатын сынақ жолының орнына .. келесіден пайдаланып көріңіз және алғашқы үш таңбалауышын/топтарын «stringa; stringb; stringc; stringd» деп алып тастауға тырысыңыз, «stringa», « stringb «және» stringc «
қосылды автор user1856732, көзі

Егер бұл бар болса, алғашқы үш таңбаны алу үшін бұл тізімді пайдаланыңыз.

/(? i) \ b ([\ w] {3} (? = [\ w] *;)/

Мұнда тексеріңіз

Бұл таңбаны 3 таңбадан аз мәнге ие жолды алу үшін пайдаланыңыз.

/(? i) \ b ([\ w] {1,2} (? =;))/

Мұнда тексеріңіз

0
қосылды
Тек сіздің сұрағыңыздан бұл доза қандай дозаны тексеруге болады? Алғашқы үшті алып тастап, олардан бөлек қасиеттерді жасағым келеді. Егер 3-тен кем болса, онда тиісті таңбалар NULL болуы керек.
қосылды автор om39a, көзі
бұл prop1 , prop2 деп айтайын, «stringa; stringb; stringc; stringd» strb , stringb және stringc мәндері бар prop3 . Егер кіріс жолы «stringa; stringb» болса, онда prop1 және prop2 қасиеттері stringa </> code және stringb NAME
қосылды автор user1856732, көзі
бірақ таңбадан 3-тен астам таңба болуы мүмкін. регистрлеріңізді тексеру үшін пайдаланатын сынақ жолының орнына .. келесіден пайдаланып көріңіз және алғашқы үш таңбалауышын/топтарын «stringa; stringb; stringc; stringd» деп алып тастауға тырысыңыз, «stringa», « stringb «және» stringc «
қосылды автор user1856732, көзі

Барлығына рахмет. Ақырында жауапты әзірледім.

Using the following regex,
([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)

1 , 2 және 4 топтарында бірінші 3 жол белгілерін аламыз. Бірақ 2 тобы \; (. *) және одан кейін 1 тобын шығару арқылы одан әрі жоюға болатын алдыңғы ; .

property name="inputString" value="russia;uae;germany;africa;"

propertyregex property="string1" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\1"

propertyregex property="string2" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\2"

propertyregex property="string3" input="${string2}" regexp="\;(.*)" select="\1"

propertyregex property="string4" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\4"

Бұл сізге str1, string3 және string4 жолдарында қажетті алғашқы үш таңбаны береді

string1 = russia

string3 = uae

string4 = Germany

0
қосылды

Барлығына рахмет. Ақырында жауапты әзірледім.

Using the following regex,
([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)

1 , 2 және 4 топтарында бірінші 3 жол белгілерін аламыз. Бірақ 2 тобы \; (. *) және одан кейін 1 тобын шығару арқылы одан әрі жоюға болатын алдыңғы ; .

property name="inputString" value="russia;uae;germany;africa;"

propertyregex property="string1" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\1"

propertyregex property="string2" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\2"

propertyregex property="string3" input="${string2}" regexp="\;(.*)" select="\1"

propertyregex property="string4" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\4"

Бұл сізге str1, string3 және string4 жолдарында қажетті алғашқы үш таңбаны береді

string1 = russia

string3 = uae

string4 = Germany

0
қосылды

Барлығына рахмет. Ақырында жауапты әзірледім.

Using the following regex,
([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)

1 , 2 және 4 топтарында бірінші 3 жол белгілерін аламыз. Бірақ 2 тобы \; (. *) және одан кейін 1 тобын шығару арқылы одан әрі жоюға болатын алдыңғы ; .

property name="inputString" value="russia;uae;germany;africa;"

propertyregex property="string1" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\1"

propertyregex property="string2" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\2"

propertyregex property="string3" input="${string2}" regexp="\;(.*)" select="\1"

propertyregex property="string4" input="${inputString}" regexp="([^;]+)([;]?[^;]*)([;]?)([;]?[^;]*)([;]?)" select="\4"

Бұл сізге str1, string3 және string4 жолдарында қажетті алғашқы үш таңбаны береді

string1 = russia

string3 = uae

string4 = Germany

0
қосылды