JavaRush /Java Blog /Random-TL /Mga regular na expression: maghanap ng salita/bahagi ng i...
eGarmin
Antas

Mga regular na expression: maghanap ng salita/bahagi ng isang salita

Nai-publish sa grupo
Kung kailangan mong maghanap ng salita o substring, ang isang magandang solusyon ay ang paggamit ng control operator mula sa regular na expression toolkit . Ito ay kailangang-kailangan kapag kailangan mong makahanap ng isang bagay na sumusunod sa ibang bagay.
Simpleng halimbawa
String str = "программируем"; Pattern p = Pattern.compile(".*программ(?=ируем).*"); Matcher m = p.matcher(str); if(m.matches()){ System.out.println("Нашел!"); }else{ System.out.println("Не нашел!"); }
1. Maghanap mula sa harap
Sa halimbawa sa itaas, kung kailangan mong hanapin ang "programming", ngunit hindi mo kailangang maghanap para sa "programming", dapat mong gamitin ang sumusunod na pattern: .*программ(?=ируем).* ?= – maghanap sa harap para sa pagkakaroon ng isang salita/bahagi ng isang salita; ?! – hanapin mula sa harapan ang kawalan ng salita/bahagi ng salita.
2. Maghanap mula sa likod
Ang paghahanap mula sa likod ay gumagana sa katulad na paraan. Kailangan mong gumamit ng ?<= para maghanap ng salita/bahagi ng salita sa likod nito at ? .*(?<=programs)we.* Ang salitang "program" ay tumutugma sa pattern na ito, ngunit ang salitang "polish" ay hindi.
Mga komento
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION