java正则匹配a标签,java正则表达式匹配斜杠

发布时间:2022-11-22

本文目录一览:

  1. 正则表达式匹配所有的a标签
  2. 在java中用正则表达式获取div标签中的a标签的值和href
  3. 正则提取a标签中的值
  4. java标签的href属性指向的地址(正则表达式)
  5. java正则匹配A标签
  6. java匹配html的a标签的正则表达式哪里错了?求修改

正则表达式匹配所有的a标签

var s4 = "a rel='nofollow' style='background-color:red;font-size:13px;' rel='11' rel='nofollow'11=2 11dd/a";
var ep5 = /^\a\s*([a-z]+=(\'|\")[\w:\-;]*(\"|\')\s*)*\s*\.*\\/a\$/i;
alert(ep5.test(s4));

这个匹配只是验证,最终结果返回true和false,这个字符串是否具备合法性。 搞不清楚你要的查找,还是验证。 以上正则可以匹配 a/a也可以匹配任何标准属性的a 包括自定义标签。 如果你要的是查找,只需要复制表达式,调用exec。

在java中用正则表达式获取div标签中的a标签的值和href

可以分成两步: Step1 找出div中的所有标签:

(?s)div[^]+?(.+)/div(?-s)

其中分组1为div标签中内容。 step2 在Step1中找出的内容中,查找a标签:

(?s)a[^]+href="([^"]+)"[^]*([^]+)/a(?s)

其中分组1为超链接的地址,分组2为超链接显示的内容。

正则提取a标签中的值

正则表达式:

a .*?href=['"](.*?)['"].*?(.*?)/a

整个正则匹配的是一个a标签,第1组匹配的href的值,第2组匹配的是你要的a标签的值。

Java示例:

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
    public static void main(String[] args) {
        Pattern pattern = Pattern.compile("a .*?href=['\"](.*?)['\"].*?(.*?)/a");
        String html = "other html a data-v-6b46a625=\"\" href=\"/user/5acb247951882555712ca8ee\" target=\"_blank\" rel=\"\" st:name=\"user\" st:state=\"5acb247951882555712ca8ee\" data-v-311d2efa=\"\"啦啦啦/a other html";
        Matcher matcher = pattern.matcher(html);
        if (matcher.find()) {
            System.out.println(matcher.group());  // 整个a标签:a ……到/a的全部
            System.out.println(matcher.group(1)); // href的值:/user/5acb247951882555712ca8ee
            System.out.println(matcher.group(2)); // 你要的a标签的值:啦啦啦
        }
    }
}

java标签的href属性指向的地址(正则表达式)

你要取的a标签中href里面的地址?

/^a\s+href=('.*'|".*")(\s|)$/

这个是匹配标签a的。匹配href之后跟单引号或者双引号,然后是空白符或者右尖括号。 你先取的这些字符串。然后替换字符串,把href前后的替掉,只留地址。

java正则匹配A标签

public class TestSort {
    public static void main(String[] args) {
        String reg = "\\a\\s*href\\s*[\\=\\w\"\'\\s]+\\s*class[\\=\\w\"\'\\s]+\\s*title[\\=\\w\"\'\\s]+\\s*target[\\=\\w\"\'\\s]+\\s*\\(正则)\\\\s*/\\s*a\\s*\\(表达式)";
        String str = "a href=\"xxxxxx\" class=\"zdbq\" title=\"xxxxx\" target=\"_blank\"正则/a表达式";
        System.out.println(str.toLowerCase().replaceAll(reg, "$1$2"));
    }
}

java匹配html的a标签的正则表达式哪里错了?求修改

代码如下:

<script type="text/javascript">
var str = "br /br/brbr 中文divdiv id=a无忧脚本img 
src=\"\" width=\"191\" height='75' 
border=0 onload=\"if(testver0   testver500)alert('test');\" 
onerror='alert(\"test\")' 
/ src=xxx alt=\"hello
just a 
test!\"/divhr script type=\"test/javascript\" 
deferalert(\"just a test!\");/scriptHello.input type=text 
value=\"无忧脚本\"br / img  \"\" /  <!-- 注释 -->
ucren<!-- 再注释 -->img alt=' title='\"'
/b123/b123,341bimg 
src=\"\" /><!-- 三注释 -->
--";
var reg = /(?:(?:\/?[A-Za-z]\w*\b(?:[=\s](['"]?)[\s\S]*?\1)*)|(?:!--[\s\S]*?--))\/?/g;
alert(str.match(reg).join("\n----------------------------------------------------\n"));
</script>