<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word"><head><META content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta content="text/html; charset=utf-8" http-equiv=Content-Type><meta content="Microsoft Word 12 (filtered medium)" name=Generator><style><!--
/* Font Definitions */
@font-face
{font-family:"MS Gothic";
panose-1:2 11 6 9 7 2 5 8 2 4;}
@font-face
{font-family:MingLiU;
panose-1:2 2 5 9 0 0 0 0 0 0;}
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
{font-family:"\@MingLiU";
panose-1:2 2 5 9 0 0 0 0 0 0;}
@font-face
{font-family:"\@MS Gothic";
panose-1:2 11 6 9 7 2 5 8 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p
{mso-style-priority:99;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><BODY>
<DIV><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>TovĂĄbbra is tartom, hogy ĂŠrtelmetlen ĂŠs felesleges egy ilyen query preprocessor (tĂśbbet ĂŠr a szigorĂşan betartott formĂĄzĂĄsi policy), de ha mĂĄr Ăgy akarod ĂŠs attĂłl fĂŠlsz hogy string belsejĂŠben lehet vĂĄltozĂł-szerĹą pattern, akkor miĂŠrt nem a patternt cserĂŠled mondjuk :-:nĂŠv formĂĄra? Ilyen aztĂĄn vĂŠgkĂŠpp nincs a string belsejĂŠben ugye... De az egĂŠsznek akkor van ĂŠrtelme, ha a â:nĂŠv = ĂŠrtĂŠkâ is szerepel valahol, szĂłval lesz elĂśl egy mintĂĄd, utĂĄna meg a nĂŠv-ĂŠrtĂŠk pĂĄrok listĂĄja (gondolom) â szĂłval sima mintaillesztĂŠsnĂŠl itt azĂŠrt tĂśbb munkĂĄt ĂŠrzek a hĂĄttĂŠrben; vĂŠgig kell menni a query-n, ĂŠs szigorĂş sorrendben megkeresni a helyettesĂtendĹ vĂĄltozĂłkat, majd megkeresni a nĂŠv-ĂŠrtĂŠk listĂĄban a vonatkozĂł vĂĄltozĂłt, ĂŠs valahogy odaĂĄlmodni a megfelelĹ ĂŠrtĂŠket. Ugye ezek tĂpusosak, szĂłval ha tĂŠnyleg ezt csinĂĄlod, akkor azĂŠrt van itt hĂĄttĂŠrmunka. Mindez azĂŠrt, mert egyszer valamikor valaki majd beszĂşrhat egy kĂŠrdĹjelet Ăşgy, hogy felborul miatta a paramĂŠterezĂŠs (gondolom az sql utasĂtĂĄsodat mindenfĂŠle helyekrĹl szeded Ăśssze, ami vĂŠlemĂŠnyem szerint hibĂĄs programozĂĄsi gyakorlat). EnnĂŠl szebb lenne, ha nem mindenfĂŠle kilencedik mĂŠlysĂŠgĹą metĂłdusbĂłl kapnĂĄl sql darabokat, amiket valahol egyszer csak ĂśsszefĹązĂśl (rossz esetben akĂĄr tĂśbb helyen is ĂśsszefĹązĂśgetve ezeket), hanem lennĂŠnek olyan (akĂĄr static) metĂłdusaid, amelyek megfelelĹen felparamĂŠterezve maguk ĂĄllĂtjĂĄk elĹ a query-t ott helyben.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Mindenesetre nem nagyon szeretnĂŠm azt a kĂłdot kĂŠsĹbb karbantartani, amit ilyen preprocessorokon zargatnak vĂŠgig. Szerintem csinĂĄltĂĄl magadnak egy nem lĂŠtezĹ problĂŠmĂĄt â a query-k kĂŠsĹbbi mĂłdosĂtĂĄsa szerintem annyira azĂŠrt nem gyakori, hiszen sokszor inkĂĄbb a sĂŠma mĂłdosĂtĂĄsa vonzza maga utĂĄn, mintsem egy hirtelen Ăşj igĂŠny vagy restriction bevezetĂŠse.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Persze Te jobban ismered a feladatot, ĂŠs simĂĄn lehet hogy igazad van, csak ennyi infĂłbĂłl jelenleg nekem kĂŠtelyeim vannak ezzel kapcsolatban.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Ădv,<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>IvĂĄn<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span style='font-size:9.0pt;font-family:"Arial","sans-serif";color:#999999'>IstvĂĄn Ketler<br></span></b><span style='font-size:9.0pt;font-family:"Arial","sans-serif";color:#999999'>Team Leader </span><span style='color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:8.0pt;font-family:"Arial","sans-serif";color:#999999'>Lufthansa Systems Hungaria Kft. <br>Development Center Pest <br>- Team "Schedule & Revenue Management"<br>- Team "Business Intelligence & Database Solutions"<br>Neumann JĂĄnos u. 1/e<br>1117 Budapest<br>Hungary <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:8.0pt;font-family:"Arial","sans-serif";color:#999999'>Tel: +36 1 887-2815 <br>Fax: +36 1 887-2977<br>Mobile: +36 30 600-4936 </span><span style='color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:8.0pt;font-family:"Arial","sans-serif";color:#999999'>Room: Infopark E, Room LH1-31 </span><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal><span style='font-size:8.0pt;font-family:"Arial","sans-serif";color:#999999'>e-mail: <a href="mailto:istvan.ketler@lhsystems.com">istvan.ketler@lhsystems.com</a> <br>Internet: <a href="http://www.lhsystems.hu/">www.LHsystems.hu</a></span><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p></div></DIV>
<DIV>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"> </P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"><SPAN STYLE="FONT-SIZE: 8pt; COLOR: gray; FONT-FAMILY: Arial">Sitz der Gesellschaft / Corporate Headquarters: </SPAN><SPAN LANG="EN-GB" STYLE="FONT-SIZE: 8pt; COLOR: gray; FONT-FAMILY: Arial; mso-ansi-language: EN-GB">Lufthansa Systems Hungaria Kft, Budapest, FĂśvarosi Birosag 01-09-463417<BR></SPAN><SPAN STYLE="FONT-SIZE: 8pt; COLOR: gray; FONT-FAMILY: Arial">Geschaeftsfuehrung / Management Board: Monika Houck</SPAN></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"><BR></P>
<P CLASS="MsoNormal" STYLE="MARGIN: 0cm 0cm 0pt"><div class=WordSection1><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> javalist-bounces@lists.javaforum.hu [mailto:javalist-bounces@lists.javaforum.hu] <b>On Behalf Of </b>GĂĄbor Garami<br><b>Sent:</b> Tuesday, January 03, 2012 7:28 PM<br><b>To:</b> Java lista<br><b>Subject:</b> Re: [Javalist] 'Pattern'<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><p>Bocs, hogy belepof, de a feladatra teljesen jo a regex, csak a feladatfelvetes bena volt.<o:p></o:p></p><p>A kigyujtesre a regex: (:[a-z0-9])<o:p></o:p></p><p>Az idezojelek kozti reszeket meg siman uritheted.<o:p></o:p></p><p>Bar megmondom oszinten, ilyen string ertelmes sql queryben nem fordul elo, idezojelek kozott sem. Mivel preprocessben hasznalod fel a regexet, igy ilyenkor meg nincs untrusted user input, utana meg mar mindegy. Csak magadat kell korlatoznod, hogy ne akarj olyat irni, hogy SELECT * FROM valami WHERE ':bla' = :bla. IMHO ez igy kb. sosem fordul elo.<o:p></o:p></p><p>A tokenizalas jo otlet, a regexszel kigyujtott talalatokat vegig lehet keresgelni.<o:p></o:p></p><p>Ezt a levelet telefonr󬠡dt፠fel ez<span style='font-family:MingLiU'>鲴</span> esetenk<span style='font-family:"MS Gothic"'>鎴</span> <span style='font-family:"MS Gothic"'>鍼</span>zethib፥t tartalmazhat.<o:p></o:p></p><p>Garami G᢯r<br>E-mail: <a href="mailto:gabor.garami@hron.me">gabor.garami@hron.me</a><br>Web: <a href="http://hron.me">http://hron.me</a><br>Skype: hron84<br>MSN: <a href="mailto:hrgy@vipmail.hu">hrgy@vipmail.hu</a><o:p></o:p></p><div><p class=MsoNormal>2012.01.03. 18:11, "Tamáł Magyar" <<a href="mailto:magyusz@gmail.com">magyusz@gmail.com</a>> ezt �a:<o:p></o:p></p><p class=MsoNormal>Nem tudom, hogy erre ez a legjobb megold᳏ de StreamTokenizer helyett<br>ajᎏom ezt:<br><a href="http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Scanner.html" target="_blank">http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Scanner.html</a><br>ÉŽ mᲠsikerrel hasznᏴam.<br><br>Magyusz<br><br>2012/1/3 Suller Andras <<a href="mailto:suller.andras@gmail.com">suller.andras@gmail.com</a>>:<br>> 2012/1/3 Keresztes Jozsef <<a href="mailto:jkeresztes@vati.hu">jkeresztes@vati.hu</a>>:<br>>> Sziasztok !<br>>><br>>> Egy sql stringen bell keresek egy m᳊k stringet, a Matcher <span style='font-family:MingLiU'>éł </span>Pattern osztᏚok seg�<span style='font-family:MingLiU'>駊</span>vel,<br>>> egyszers�k a dolgot, csak a ":" karaktert keressk:<br>>><br>>> Matcher matcher = Pattern.compile(":").matcher(sqlString);<br>>><br>>> A probl<span style='font-family:"MS Gothic"'>éĄ</span> azzal van hogy csak azokat a ":" karaktereket szeretn<span style='font-family:MingLiU'>é </span>megkeresni az sql stringben ami nem aposztr󦯫 k��t van p<span style='font-family:MingLiU'>鏤</span>ᾏ:<br>>><br>>> SELECT 'ez nem'':kell' FROM valami WHERE id = :id and ':' = 'x'<br>>><br>>> Vagyis itt a 2. kett��nt lenne csak talᏥt a t�� nem.<br>>> Valaki foglalkozott mᲠilyen keres<span style='font-family:"MS Gothic"'>鳊</span> minta meg�sᜥl ?<br>>> ÉŽ egyel��nem tudom elk<span style='font-family:"MS Gothic"'>é°ş</span>elni...<br>><br>> Regen hasznaltam mar, de azt hiszem a StreamTokenizer az, ami kezeli<br>> ezt a problemat. Marmint hogy az '...' szovegreszt egy tokenkent adja<br>> vissza, igy meguszod a regularis kifejezest.<br>><br>> Andras<br>> _______________________________________________<br>> Javalist mailing list<br>> <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>> <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>_______________________________________________<br>Javalist mailing list<br><a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br><a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><o:p></o:p></p></div></div></P></DIV></BODY></HTML>