- 浏览: 419683 次
- 性别:
- 来自: 济南
文章分类
最新评论
-
pmh905001:
写的很详尽,感谢!
解析jvm.dll和java.exe -
Bll:
插得真深啊,我的是(eclipse_j2ee_juno):F: ...
在eclipse里jsp编译后的java和class文件的位置 -
heming_way:
谢谢,对我很有用,解答了我对多值依赖的疑问
关于多值依赖--范式! -
JavaStudy2011:
java语言解析xml文件 -
vrussell:
Thanks man, it helps me a lot!
获得IEditorPart和IDocument
有这么一个需求,
网页里所有的src="/web/inde.jsp"src后面引号里面的网址全部添加为“www.baidu.com/web.inde.jsp”
另外<link >下的href也是同样。。
遇到里面是http: www. https:这样的不能替换
正则式为
s*(<LINK\\s+.+?href=|src=)\\s*['|\"]\\s*((?!http:|https:|www\\.).+?)['|\"]
关键点为 消除正则的惰性和负向预查
说明 正则表达式 匹配结果 $1
普通表达式 windows 98|2000|2003 windows 98 windows 2000 windows 2003
后向引用,获取匹配 windows (98|2000|2003) windows 98 windows 2000 windows 2003 98,2000,2003
非获取匹配 windows (?:98|2000|2003) windows 98 windows 2000 windows 2003
正向预查,非获取匹配 windows (?=98|2000) windows 98 windows 2000 windows 2003
负向预查,非获取匹配 windows (?!98|2000) windows 98 windows 2000 windows 2003
改为
代码如下
网页里所有的src="/web/inde.jsp"src后面引号里面的网址全部添加为“www.baidu.com/web.inde.jsp”
另外<link >下的href也是同样。。
遇到里面是http: www. https:这样的不能替换
正则式为
s*(<LINK\\s+.+?href=|src=)\\s*['|\"]\\s*((?!http:|https:|www\\.).+?)['|\"]
关键点为 消除正则的惰性和负向预查
引用
说明 正则表达式 匹配结果 $1
普通表达式 windows 98|2000|2003 windows 98 windows 2000 windows 2003
后向引用,获取匹配 windows (98|2000|2003) windows 98 windows 2000 windows 2003 98,2000,2003
非获取匹配 windows (?:98|2000|2003) windows 98 windows 2000 windows 2003
正向预查,非获取匹配 windows (?=98|2000) windows 98 windows 2000 windows 2003
负向预查,非获取匹配 windows (?!98|2000) windows 98 windows 2000 windows 2003
<LINK rel="stylesheet" href="style_new.css" type="text/css"> <TD width="59" height="45"><IMG src="www.aaa/top-images/internaluse_sticker.gif" width="59" height="45" border="0"></TD> <TD width="170" height="45"><A href="/"><IMG src="http:\\aaa/top-images/title.gif" border="0"></A></TD> <TD><A href="/fscripts/link.asp?url=/global/"><IMG src="/top-images/eng_site.gif" width="112" height="22" border="0" alt="English"></A></TD>
改为
<LINK rel="stylesheet" href="www.baidu.comstyle_new.css" type="text/css"> <TD width="59" height="45"><IMG src="www.aaa/top-images/internaluse_sticker.gif" width="59" height="45" border="0"></TD> <TD width="170" height="45"><A href="/"><IMG src="http:\\aaa/top-images/title.gif" border="0"></A></TD> <TD><A href="/fscripts/link.asp?url=/global/"><IMG src="www.baidu.com/top-images/eng_site.gif" width="112" height="22" border="0" alt="English"></A></TD>
代码如下
public String parseTool(String file,String replaceText){ Scanner scanner; BufferedWriter rf; String repText=replaceText; String resultTxt="e:/result.txt";//输出文件路径 try { //"\\s[?=<LINK\\s+.*\\s+href=|?=src=]+\\s*['|\"]\\s*(((?!http:)(?!https:)(?!www\\.)).+?)[\'|\"]"; scanner = new Scanner(new FileInputStream(file)); String reg="\\s*(<LINK\\s+.+?href=|src=)\\s*['|\"]\\s*((?!http:|https:|www\\.).+?)['|\"]"; //String reg="\\s*src=[\'|\"]([^www\\.].+?)[\'|\"]";// String str; Pattern pattern; Matcher matcher; int status=0; String str0; rf =new BufferedWriter( new FileWriter(resultTxt)); while(scanner.hasNextLine()){ str=scanner.nextLine(); str0=str; pattern = Pattern.compile(reg); matcher = pattern.matcher(str); while (matcher.find()) { status=1; //System.out.println (matcher.group(2)); str=str.replaceAll(matcher.group(2),repText+matcher.group(2)); }//while-find if(status==1){ rf.write(str); }else if(status==0){ rf.write(str0); } rf.write("\r\n"); //status=0; }//while-hasnext rf.flush();//输出 rf.close(); //关闭输出流 } catch (FileNotFoundException e) { e.printStackTrace(); return "FileNotFinded."; } catch (IOException e) { e.printStackTrace(); return "IOError."; } return "ok."; } public static void main(String []args){ String result; result=new mainClass().parseTool("e:/to.txt","www.baidu.com"); //result=new mainClass().parseTest("e:/to.txt","www.baidu.com"); System.out.println("--"+result); }
发表评论
-
ClientAbortException: java.net.SocketException: Connection reset by peer: socke
2011-10-13 14:25 1描述下问题 tomcat报错 ClientAbortExc ... -
关于无法delete文件
2011-09-26 17:12 1421File f=new File(targetDir+&qu ... -
汉字编码
2011-07-29 11:08 938一、汉字编码的种类 汉字编码中现在主要用到的有三类, ... -
符编码笔记:ASCII,Unicode和UTF-8
2011-07-29 10:37 931阮一峰 日期: 2007年10月28日 1. ASCII码 ... -
Class.getResource
2011-07-21 13:19 1019用JAVA获取文件,听似简单,但对于很多像我这样的新人来说, ... -
学习内部类的总结
2010-10-24 11:23 936public class TestInnerStatic ... -
Classloader加载类的问题探讨
2010-09-06 14:28 1012首先在C:\Program Files\Java\jdk1.6 ... -
学习spring IOC AOP
2010-09-03 11:28 2440一.什么是控制反转模式? 不创建对象,但是描述创建它们的方 ... -
有符号类型转为无符号类型
2010-09-01 17:29 1444int toUnsigned(short s) { ... -
学习 utf-8总结
2010-08-15 16:45 842在ultraEditor中查看字符 “中国”的utf-8格式的 ... -
unicode
2010-08-15 16:02 1339Unicode是国际组织制定 ... -
=号到底比较的是什么??
2010-07-23 17:22 971先看个程序 package com.test.one; ... -
匹配jsp网页 调用split
2010-06-07 12:42 1393String str="D:/java/apache ... -
关于数组的创建方式
2010-06-07 12:01 1133今天csdn上一个争论很凶的帖子 http://topic. ... -
关于0和0.0作为分母
2010-06-07 10:22 12725/0.0 为Infinity 5/0 为抛Arit ... -
关于ArrayList的remove
2010-06-05 10:39 1572ArrayList al=new ArrayList(); ... -
内存泄露与溢出区别,何时产生内存泄露?
2010-06-03 22:10 1637内存溢出是由于jvm虚拟 ... -
变量的多态性问题
2010-06-03 19:40 1090public class DuilThread exten ... -
得到两个数中最大的数
2010-06-02 10:22 1064public class TwoToMax { / ... -
可以通过报异常达到你想要的结果
2010-06-02 10:19 928今天看到一个问题 可以同时判断2007-09-31 和200 ...
相关推荐
正则表达式(Regular Expression)是一种模式匹配工具,用于对字符串进行搜索、查找、替换等操作。在易语言中,正则表达式主要通过内置的函数和模块来实现。例如,"子程序_正则文本替换"可能就是一个易语言中用于...
Java正则表达式匹配工具是IT领域中一种强大的文本处理工具,它利用正则表达式(Regular Expression)的规则来查找、替换或者提取文本中的特定模式。正则表达式是一种特殊的字符序列,能够帮助程序员或者用户高效地...
局部变量 匹配结果, 结构体(正则表达式匹配) .局部变量 目标文本, 文本型 = "这里是包含网址的文本,比如 http://example.com 和 www.example.org" .局部变量 网址, 文本型 .程序段 .创建对象 正则表达式对象, ...
本文将深入探讨易语言中的正则表达式匹配中文的原理、方法以及应用。 正则表达式(Regular Expression)是一种模式匹配的语言,用于描述一种字符串的集合。在易语言中,我们可以通过内置的字符串函数来实现正则...
在易语言中,正则表达式类是一个非常重要的工具,用于处理字符串的模式匹配和查找。在处理中文文本时,这个功能尤为关键,因为中文字符的编码和处理方式与英文有所不同。 正则表达式是用于匹配字符串模式的一种强大...
为了更好地理解和调试正则表达式,开发者通常会使用专门的正则表达式匹配调试工具。 正则表达式匹配调试工具的功能通常包括以下几点: 1. **实时匹配测试**:用户可以输入正则表达式和待匹配的文本,工具会即时...
而本软件正是把强大的正则功能完美地添加到表格中,让 Excel、WPS 支持正则表达式的搜索、匹配提取、替换、定位等,让数据处理能力进化一个层次! 让 Office Excel、WPS 表格支持正则表达式的免费插件:「Excel ...
这些基础语法是构建正则表达式匹配算法的基础。 接下来,我们可以采用DFA(确定有限状态自动机)或NFA(非确定有限状态自动机)来实现正则表达式的匹配。在这个案例中,C++代码可能是基于NFA实现的,因为NFA通常更...
在进行正则表达式匹配时,需要构建能够正确描述目标模式的正则表达式。对于`<div>`和`<style>`标签,通常需要考虑的是标签的开始`<div>`、结束`</div>`,以及它们之间的内容。对于`<style>`标签,需要识别它的开始`...
本资源文件是我自己总结的,其中包括5个类,这5个类的代码基本...用正则表达式替换字符串内容,使用正则表达式切割字符串,字符串匹配,将字符串“<msg>ha>ve modif”中的>替换为>将<替换为<将&替换为2. 等等情况!
本项目提供了一个正则表达式匹配的小工具源码,旨在帮助开发者和学习者快速验证正则表达式的正确性。 该工具的核心功能是验证正则表达式,确保其能正确匹配目标字符串。在开发过程中,正则表达式的调试往往是一项...
正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配字符串...在压缩包文件"正则表达式匹配"中,你可能找到更多关于正则表达式实际应用的实例和教程,这将有助于你加深理解和提升技能。
本项目提供了一个C#编写的正则表达式测试工具,包含完整的源代码,可以帮助开发者调试和测试他们的正则表达式,支持查找和替换功能,并能直观地显示匹配结果。 1. **C#中的正则表达式基础** - `System.Text....
在IT领域,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它能够进行复杂的模式匹配、查找、替换等操作。在本话题中,我们将探讨如何使用PowerBuilder 11.5这一经典的开发环境来实现正则...
正则表达式是一种强大的文本模式匹配工具,广泛应用于字符串搜索和替换等场景。在Lucene中,可以通过`regexQuery`来利用正则表达式进行复杂条件的匹配,从而实现更精确的搜索需求。 #### regexQuery详解 `regexQuery`...
正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配、查找、替换等操作,涉及字符串处理的各个领域。正则表达式转换工具是专门针对这一需求而设计的,它能帮助用户将输入的内容转换...
- 这个程序可能包含一个输入框让用户输入正则表达式,另一个输入框输入待测试的文本,然后提供按钮来执行匹配、替换等操作。 - 程序会显示匹配结果,包括匹配的子串、开始位置和结束位置等信息,帮助开发者调试和...
在信息技术领域,正则表达式(Regular Expression)是一种模式匹配语言,用于搜索、提取、替换或者验证字符串中的特定模式。它在数据处理、文本分析、网页爬虫以及日志分析等方面有着广泛的应用。 该工具的核心功能...
在"C++ 正则表达式匹配工具源码"中,我们可以期待看到一系列类和函数,它们是基于`<regex>`库实现的,用于解析、编译和执行正则表达式。这些工具可能包括: 1. **正则表达式编译**:`std::regex`类用于创建一个正则...