daGrevis Posted March 25, 2014 Report Posted March 25, 2014 (edited) Uzlaboju, lai ir atļauts arī something pēc TLD (example.com/something/) un optional hashtag (example.com/#hello-world). http://regex101.com/r/zL8uP7 Vienīgais, kas tam regex varētu pietrūkt, ir semantiskas grupas, lai katra grupa reāli pointotu uz protokolu, subdomēniem, domēnu, TLD etc.. Edited March 25, 2014 by daGrevis Quote
daGrevis Posted March 25, 2014 Report Posted March 25, 2014 (edited) http://regex101.com/r/mB1uO5 Saliku arī semantiskās grupas un pieliku unicode. Arī uzlaboju lasāmību. P.S. Regexi ir mans hobijs, tāpēc es tā te ņemos. P.S. v2: https://gist.github.com/daGrevis/9762288 Edited March 25, 2014 by daGrevis Quote
gurkjis Posted March 25, 2014 Report Posted March 25, 2014 (edited) P.S. Regexi ir mans hobijs, tāpēc es tā te ņemos. Es gan nelabprāt ar tiem darbojos, man gar acīm raibs metas, kad uz regexiem skatos - asociējas ar mašīnkoda lasīšanu. Parasto kodu ir vieglāk saprast - tur Tev ir vārdi un ar katru vārdu uzreiz ir konkrēta asociācija, kā arī struktūra ir pārskatāma. Nu jā, var iekalt, ko katrs simbols nozīmē, bet vienalga tas ir brutāli pret high-level nemazohistisku programmētāju. Tikko iedomājos, ka varbūt ir kāda abstraktēta programmēšanas valoda, kas kompilē uz regexiem... Bet savu uzdevumu jau pilda tie. Edited March 25, 2014 by gurkjis Quote
jurchiks Posted March 25, 2014 Report Posted March 25, 2014 Tāpēc jau saka, ka ja tev ir problēma un tu gribi izmantot regex tās risināšanai, tad tev ir jau divas problēmas. Pavisam vienkārši regexi, kuri tikai kaut ko vienkāršu matcho vienā fragmentā, vēl ir ciešami, bet šis jau ir vienkārši "nošaujiet mani". Quote
marrtins Posted March 26, 2014 Report Posted March 26, 2014 > Vnk vajag parsēt tikai to, kas ar protokolu priekšā. Nop. example.com, bez protokola, ir valīds links un to vajag pārvērst par http://example.com. Kāpēc http? Varbūt ftp? Quote
codez Posted March 26, 2014 Report Posted March 26, 2014 Man vienā projektā arī varēja publiskot saites, bet tā kā tur papildus katrai saitei tika iegūta meta informācija ar opengraph protokolu, tad principā tika reāli pārbaudīts, vai dotā saite eksistē, vai nē. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.