This routine examines a url to see if it ends with a domain extension such as .com, .net etc.
At top of module …
1 |
Private Const DOMAIN_EXT = ".com.org.net.edu.gov.mil.ac.ad.ae.af.ag.ai.al.am.an.ao.aq.ar.As.at.au.aw.ax.az.ba.bb.bd.be.bf.bg.bh.bi.bj.bl.bm.bn.bo.bq.br.bs.bt.bv.bw.By.bz.ca.cc.cd.cf.cg.ch.ci.ck.cl.cm.cn.co.cr.cu.cv.cw.cx.cy.cz.de.dj.dk.dm.do.dz.ec.ee.eg.eh.er.es.et.eu.fi.fj.fk.fm.fo.fr.ga.gb.gd.ge.gf.gg.gh.gi.gl.gm.gn.gp.gq.gr.gs.gt.gu.gw.gy.hk.hm.hn.hr.ht.hu.id.ie.il.im.In.io.iq.ir.is.it.je.jm.jo.jp.ke.kg.kh.ki.km.kn.kp.kr.kw.ky.kz.la.lb.lc.li.lk.lr.ls.lt.lu.lv.ly.ma.mc.md.me.mf.mg.mh.mk.ml.mm.mn.mo.mp.mq.mr.ms.mt.mu.mv.mw.mx.my.mz.na.nc.ne.nf.ng.ni.nl.no.np.nr.nu.nz.om.pa.pe.pf.pg.ph.pk.pl.pm.pn.pr.ps.pt.pw.py.qa.re.ro.rs.ru.rw.sa.sb.sc.sd.se.sg.sh.si.sj.sk.sl.sm.sn.so.sr.ss.st.su.sv.sx.sy.sz.tc.td.tf.tg.th.tj.tk.tl.tm.tn.to.tp.tr.tt.tv.tw.tz.ua.ug.uk.um.us.uy.uz.va.vc.ve.vg.vi.vn.vu.wf.ws.ye.yt.za.zm.zw" |
Then …
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
'================================================================ ' check to see if url is a url that ends with a domain extension, .com, .net etc ' if so return with trailing slash / if [bIfIsDomainExtAppendWithTrailingSlash] = true '================================================================ Public Function bTrue(ByRef sbyrefUrl As String, Optional bIfIsDomainExtAppendWithTrailingSlash As Boolean) As Boolean On Error GoTo oops: sbyrefUrl = Trim$(sbyrefUrl) ' trim Dim sParts() As String ' split the domain at the dots . sParts = Split(sbyrefUrl, ".") Dim sEnd As String ' get what is to the right of last dot sEnd = sParts(UBound(sParts)) If Len(sEnd) > 4 Then Exit Function ' max length of any of these domains, including trailing slash / ' with dot removed, is 4 characters, exit sub, returns false If (Right(sEnd, 1) = "/") Then sEnd = Replace(sEnd, "/", "") ' is [sEnd] ends with / , remove it bTrue = (InStr(1, DOMAIN_EXT, sEnd, vbTextCompare) > 0) If bTrue Then If bIfIsDomainExtAppendWithTrailingSlash Then sbyrefUrl = (sbyrefUrl & "/") End If End If Exit Function oops: If err.Number <> 0 Then Stop ' End If End Function |
<br