java/Kotlin/android 判断是否是url 的正则
来源:互联网 发布:python和java的区别 编辑:程序博客网 时间:2024/05/21 09:14
//域名后缀,需要可以添加 private static final String[] come = { "top", "com.cn", "com", "net", "cn", "cc", "gov", "cn", "hk" }; public static boolean isWebUrl(String url) { StringBuilder sb = new StringBuilder(); sb.append("("); for (String anExt : come) { sb.append(anExt); sb.append("|"); } sb.deleteCharAt(sb.length() - 1); sb.append(")"); String pattern = "((https?|s?ftp|irc[6s]?|git|afp|telnet|smb)://)?((\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})|((www\\.|[a-zA-Z\\.\\-]+\\.)?[a-zA-Z0-9\\-]+\\." + sb.toString() + "(:[0-9]{1,5})?))((/[a-zA-Z0-9\\./,;\\?'\\+&%\\$#=~_\\-]*)|([^\\u4e00-\\u9fa5\\s0-9a-zA-Z\\./,;\\?'\\+&%\\$#=~_\\-]*))"; return Pattern.compile(pattern).matcher(url).matches(); }
Kotlin 代码
val a= arrayOf( "top", "com.cn", "com", "net", "cn", "cc", "gov", "cn", "hk");fun getCompleteUrl(text: String): Boolean { var sb = StringBuilder(); sb.append("("); for (f in a) { sb.append(f); sb.append("|"); } sb.deleteCharAt(sb.length - 1); sb.append(")"); val p = Pattern.compile("((https?|s?ftp|irc[6s]?|git|afp|telnet|smb)://)?((\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})|((www\\.|[a-zA-Z\\.\\-]+\\.)?[a-zA-Z0-9\\-]+\\." + sb.toString() + "(:[0-9]{1,5})?))((/[a-zA-Z0-9\\./,;\\?'\\+&%\\$#=~_\\-]*)|([^\\u4e00-\\u9fa5\\s0-9a-zA-Z\\./,;\\?'\\+&%\\$#=~_\\-]*))", Pattern.CASE_INSENSITIVE); val matcher = p.matcher(text); return matcher.matches()}
能满足百分之九十的需求。
阅读全文
0 0
- java/Kotlin/android 判断是否是url 的正则
- 正则表达式判断是否是url
- 判断是否是有效的url
- 【求解】【正则表达式】判断输入的一个字符串是否是一种常用的URL规范字符串
- 判断是否URL的正则表达式【Java和javascript】字符串是否包含中文
- 判断是否是日期,是否是数字的正则表达式
- 判断是否是域名的正则表达式
- 判断字符串是否是日期的正则
- 判断URL 是否是一个有效的URL
- 判断字符串是否 是url
- IOS判断是否是URL
- android:java 判断字符串是否是数字
- java利用正则表达式判断是否是浮点数
- 判断字符是否是不安全的url字符
- 判断扫描后的内容是否是URL
- JS 判断页面的url是否是正确格式
- Java判断是否是整数,小数或实数的正则表达式
- Java判断是否是整数,小数或实数的正则表达式
- nginx+ftp搭建图片服务器
- android studio自定义生成jar包基础篇
- robot 批处理文件
- Vue-全局添加组件
- bzoj 2375: 疯狂的涂色
- java/Kotlin/android 判断是否是url 的正则
- leetcode算法刷题
- C# 中的线程安全集合类
- mysql学习笔记
- mysql innodb 行锁解锁后出现1213 死表现象 Deadlock found when
- 基于condition 实现的线程安全的优先队列(python实现)
- 从零开始搭建一个项目框架MVVM(OC)
- 测量View的宽高,避免为零
- 蓝牙 Mesh会是最好的物联网协议吗?