本文目錄一覽:
- 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’);\” \n
onerror=’alert(\”test\”)’ /img src=xxx alt=\”hello\njust 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
原創文章,作者:YXZT,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/146678.html