Jump to content
php.lv forumi

php regex hyperlink


mashiina

Recommended Posts

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 by daGrevis
Link to comment
Share on other sites

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 by daGrevis
Link to comment
Share on other sites

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 by gurkjis
Link to comment
Share on other sites

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".

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...