/**
* @author 郝春挺
* @param href 带超链接的字符串
* @param rule 根据某种规则来处理超链接
* @return 返回替换后的字符串
*/
public static String replaceAhrefString(String hrefString,String rule ){
// String hrefString="<a href=\"aa.jsp?id=1\">mmm</a>sfsf阿娇咖啡机啊<a href=\"aa.jsp?id=2\">eee</a><a href=\"aa.jsp?id=3\">ccc</a><a href=\"aa.jsp?id=1\">mmm</a>";
// String rule="(<a\\s*href=[^>]*id=(.*?)\">(.*?)</a>)";
Pattern pattern = Pattern.compile("(<a\\s*href=[^>]*id=(.*?)\">(.*?)</a>)");//加入规则
Matcher m = pattern.matcher(hrefString);
boolean result = m.find();
while(result){
for(int i=1;i<=m.groupCount();i++){
System.out.println(m.group(i)+"=="+m.groupCount());
}
String s=m.group(3)+"("+m.group(2)+")";
hrefString=hrefString.replace(m.group(),s);
result=m.find();
}
System.out.println("hrefStrings==="+hrefString);
return hrefString;
}
public static void main(String[] args) {
String hrefString="<a href=\"aa.jsp?id=1\">mmm</a>sfsf阿娇咖啡机啊<a href=\"aa.jsp?id=2\">eee</a><a href=\"aa.jsp?id=3\">ccc</a><a href=\"aa.jsp?id=1\">mmm</a>";
//(.*?)属于通配符 用于查看某处是我们需要的变量的
String rule="(<a\\s*href=[^>]*id=(.*?)\">(.*?)</a>)";
String returnString= replaceAhrefString(hrefString,rule);
System.out.println("returnString==="+returnString);
}
分享到:
相关推荐
注意,调用一次 replaceString(mainStr,searchStr,replaceStr) 函数,只能将字符串 mainStr 中最先找到的一个 searchStr 字符串替换为 replaceStr 字符串,并不能将字符串 mainStr 中所有的 searchStr 字符串替换为 ...
正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。本文重点给大家介绍swift 3.0 正则表达式查找/替换字符的实现代码,需要的朋友参考下吧
6、*可抽取、采集指定模式的串,例如C程序中的注释、全部的中文字符串等等; 7、*不仅支持文本/超文本/XML,还支持office文档doc/rtf/xls/ppt; 8、*支持超长多行的查找串和替换串:可以直接使用多行来编辑; 9、*...
从结果中,我们可以看到,循环体每运行一次,那么将输出的是字符串里的字符,并且该字符是从0开始,我们在字符串变量后用[ ]括起,并给出相应的序号,便可以得到我们想要的字符。 三、字符串连接符 在PHP中有且仅有...
1. 二分法 5 1.1. 什么是二分查找 5 1.2. 如何识别二分法 5 1.3. 二分法模板 6 1.3.1. 模板一 6 ...2.3.2.5. LC-438:找到字符串中所有字母的异位词 82 3. 模板 85 2.3.2.6. LC-76:删除倒数第N个节点 85
众所周知,在程序开发中,难免会遇到需要匹配、查找、替换、判断字符串的情况发生,而这些情况有时又比较复杂,如果用纯编码方式解决,往往会浪费程序员的时间及精力。因此,学习及使用正则表达式,便成了解决这一...
通过在文本框、文档和数十个控件中定位和替换字符串的能力来增强用户体验。 RapidFindReplace 还具有高级用户选项,例如通配符、正则表达式、区分大小写、全字等等。 您可以找到更多信息,包括 “仅查找”或“查找...
3.3.2 替换字符串中的字符 3.3.3 使用非成员重载运算符连接 3.4 字符串的查找 3.4.1 反向查找 3.4.2 查找一组字符第1次或最后一次出现的位置 3.4.3 从字符串中删除字符 3.4.4 字符...
实例013——实现查找、替换字符串 实例014——根据指定字符分割字符串 实例015——格式化字符串 实例016——CString字符串的类型转换 实例017——获取当前的日期、时间并格式化输出 实例018——计算某日为星期...
正则表达式可以: •测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码...正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 创建正则表达式 Js代码 代码
实例013——实现查找、替换字符串 实例014——根据指定字符分割字符串 实例015——格式化字符串 实例016——CString字符串的类型转换 实例017——获取当前的日期、时间并格式化输出 实例018——计算某日为星期...
实例013——实现查找、替换字符串 实例014——根据指定字符分割字符串 实例015——格式化字符串 实例016——CString字符串的类型转换 实例017——获取当前的日期、时间并格式化输出 实例018——计算某日为星期...
正则表达式可以: •测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码...正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。 创建正则表达式 代码如下: v
文本和字符可以进行各种操作,包括字符串连接、字符串查找、字符串替换等。 调用函数 MATLAB 中的函数是预定义的程序块,用于实现特定的功能。函数可以用于实现复杂的算法、数据分析、图形化等任务。 二维图和三...