0 0

java 判断一段html代码有没有外链接,除了flash的地址30

请教一下,用xheditor编辑器,用户编辑后,编辑器将html代码传到后台action的一个string里,string中不能有外链接,除了flash地址和公司服务器的链接。
2014年12月27日 01:02

2个答案 按时间排序 按投票排序

0 0

楼主可以通过正则表达式来匹配,但是这样效率很低。我建议楼组使用Jsoup这样的工具包来实现,和js那样很想,可以通过查询表达式获取到所有的标签和属性,效率也非常高。

2015年7月12日 22:38
0 0



import java.io.BufferedReader;
import java.io.FileReader;
import java.io.BufferedWriter;
import java.io.FileWriter;


import java.util.regex.Pattern;
import java.util.regex.Matcher;

/**
 * @author Royh.L
 * @date   2014.12.30
**/
public class URLTest {


	public static void main(String[] args) throws Exception {
		//FileInputStream html = new FileInputStream("html.txt");

		BufferedReader html = new BufferedReader(new FileReader("html.txt"));
		BufferedWriter localTxt = new BufferedWriter(new FileWriter("local.txt"));
		BufferedWriter outTxt = new BufferedWriter(new FileWriter("out.txt"));

		String locals[] = {"iteye.com"};
		
		// src="http://x.y.c/m?n=t"
		Pattern p = Pattern.compile("(?:(?:href)|(?:src))=\"(?:http://)?(([?=a-zA-Z0-9/._-]+))\"", Pattern.CASE_INSENSITIVE);

		//Matcher m = p.matcher("script><link href=\"http://www.iteye.com/stylesheets/ask.css?1418977807\"");

		// 这里的html.txt是压缩的,这里只有一行。
		// 如果没有压缩,则循环html.readLine()判断。
		Matcher m = p.matcher(html.readLine());

		String url = "";
		while(m.find()) {
			// get url.
			url = m.group(1);  
			System.out.println(url);
			//if(url != null) 
			for(String local : locals) {
				// local 
				// 绝对路径 iteye.com    eg: src="http://xxx.iteye.com/yyy?ddd"
				// 相对路径 no iteye.com eg: src="/images/x.y"
				if(url.indexOf(local) != -1 || url.split("/")[0].indexOf(".") == -1) { 
					localTxt.write(m.group(0) + "\r\n");
				} else { // out
					outTxt.write(m.group(0) + "\r\n");
				}
			}
		}

		localTxt.close();
		outTxt.close();
		html.close();
		//System.out.println(html);
	}

}

2014年12月30日 12:53

相关推荐

    使用java快速判断网页链接是否有效

    本文将详细介绍如何使用Java语言来实现一个简单的工具方法,用于快速判断一个网页链接是否有效。 #### 一、方法原理 本方法通过`java.net.URL`类创建一个URL对象,并使用`java.net.HttpURLConnection`类打开与该...

    Java2Pas Java代码转pas代码

    Java2Pas是一个实用工具,主要用于将Java编程语言编写的源代码转换为Pascal语言的等效代码。这个工具对于那些需要在两种语言之间迁移代码或者理解不同编程语言语法的开发者来说非常有价值。Java和Pascal虽然都是面向...

    java源码包---java 源码 大量 实例

     Java实现HTTP连接与浏览,Java源码下载,输入html文件地址或网址,显示页面和HTML源文件,一步步的实现过程请下载本实例的Java源码,代码中包括丰富的注释,对学习有帮助。 Java实现的FTP连接与数据浏览程序 1个...

    7个Java小游戏源代码

    7个Java小游戏源代码 解压密码是:yykings

    很强大的java代码混淆工具 Jocky

    Jockey跟其他混淆工具不同的是:它是直接对编译过程做文章,也就是在把java文件编译为class文件的过程中对代码进行混淆,混淆后的代码中包含很多JVM 指令,大家知道JVM指令是面向机器的,人类一般很难看懂!...

    java根据ip获取国家、地区名称,附带ip地址库

    在Java编程中,根据IP地址获取国家和地区名称是一项常见的需求,尤其在数据分析、网络监控或者用户定位等场景中。这个话题涉及到的主要知识点包括IP地址处理、数据库查询以及使用第三方库。 首先,IP地址是一个32位...

    java万年历的源代码(显示农历及节假日)

    在Java编程领域,开发一个万年历程序是一个常见的练习,旨在展示日期处理、日历算法以及用户界面设计等技能。...通过学习和理解这段代码,开发者不仅可以提升日期时间处理的能力,还能对Java GUI编程有更深入的理解。

    java项目开发10例源代码

    【Java项目开发10例源代码】集合涵盖了Java编程在多个领域的应用,为开发者提供了丰富的学习资源。这些实例包括桌面应用程序、网页设计以及企业级项目,甚至还有手游开发的源码,展示了Java语言的广泛适应性和灵活性...

    Java开发技术大全(500个源代码).

    代码范例列表 第1章 示例描述:本章演示如何开始使用JDK进行程序的开发。 HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载...

    java重构改善既有代码设计

    Java重构是一种针对已有代码设计进行优化的技术,旨在提高代码的可读性、可维护性和整体结构,而不会改变其外部行为。在这个过程中,开发者通过一系列小型、精确的步骤改进代码,消除坏味道,提高设计质量,同时保持...

    生日祝福java程序代码

    在Java编程领域,创建一个生日祝福程序是一种常见的实践,它能为用户提供个性化和有趣的互动体验。这个名为"生日祝福java程序代码"的压缩包显然包含了多个功能模块,旨在为生日庆祝活动增添乐趣。以下是该程序可能...

    java程序表白代码

    "Java程序表白代码"就是这样一个实例,它巧妙地利用编程语言来创造出浪漫的表达方式,为恋人间的互动添加科技的温度。Java,作为一种广泛使用的面向对象的编程语言,以其严谨性、跨平台性和丰富的库资源而闻名,但在...

    java通过文件头内容判断文件类型

    文件头是指文件开始的一段字节,不同的文件格式会有不同的文件头结构。例如,JPEG图像文件的开头通常是"FF D8 FF E0",PDF文档的开头是"%PDF-",ZIP压缩文件的头四个字节是"50 4B 03 04"等。这些特定的字节序列就是...

    大鱼吃小鱼JAVA版本源代码

    "大鱼吃小鱼"是一款经典的休闲游戏,其JAVA版本的源代码为我们提供了一个学习和研究JAVA编程在游戏开发中的应用的机会。以下是对这个项目的一些关键知识点的详细解析: 1. **JAVA编程语言**:本项目是用JAVA语言...

    java图像识别(判断两个图是否相似)

    在Java中进行图像识别,尤其是判断两张图片是否相似,是一个涉及计算机视觉和图像处理的复杂任务。本话题将深入探讨如何使用Java实现这一功能。在实际应用中,图像相似度判断广泛应用于图像检索、内容识别、人脸识别...

    java转js工具

    Java到JavaScript转换工具有助于开发者将已有的Java代码库移植到JavaScript环境中,这在Web开发中尤其有用,因为JavaScript是浏览器端的主要脚本语言。这样的工具能够帮助开发者利用Java的强大功能来构建前端应用,...

    JAVA加密 保护源代码 防止反编译的工具

    Java有了它方便的一个方面,但是他同时也带给了开发者一个烦恼,这就是保护的办法不多,而且大多数不是很好用,这样自己辛苦开发出来的程序很容易被人反编译过来而据为己有,一般情况下,大多数的人都是用混编器...

    java新浪微博(含源代码)

    通过阅读和学习这些源代码,可以深入理解如何在Java中实现一个完整的微博客户端应用。这不仅涉及到网络编程和API交互,还涵盖了用户界面设计、数据持久化、异常处理等多个方面的知识。 总结来说,"java新浪微博(含...

    java判断输入一段字符串是不是回文

    最好在myeclipse里面运行,可以直接在下面输入一段字符串,运行便可以看出结果。

    最新版java代码生成器基于springMvc+mysql 后台功能一键生成

    一个基于java springMvc开发的代码生成器, 1为java工程师自动编写各种复杂的增删改查功能 2我提供各种友好的service接口 3 我能提供多种http json接口 .... 这个是这个工具的使用说明地址 ...

Global site tag (gtag.js) - Google Analytics