日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

中文字符匹配java_java正则匹配HTML中a标签里的中文字符示例

發(fā)布時(shí)間:2023/12/10 HTML 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 中文字符匹配java_java正则匹配HTML中a标签里的中文字符示例 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

java正則匹配HTML中a標(biāo)簽里的中文字符示例

發(fā)布于 2020-8-12|

復(fù)制鏈接

摘記: 本文實(shí)例講述了java正則匹配HTML中a標(biāo)簽里的中文字符。分享給大家供大家參考,具體如下:今天群里一位朋友問到了一個(gè)正則表達(dá)式的問題,有如下內(nèi)容:

```xhtml

特432

453543

a1特123你 ..

本文實(shí)例講述了java正則匹配HTML中a標(biāo)簽里的中文字符。分享給大家供大家參考,具體如下:今天群里一位朋友問到了一個(gè)正則表達(dá)式的問題,有如下內(nèi)容:

```xhtml

特432

453543

a1特123你好123嗎?

特2

標(biāo)簽中的文字

```

現(xiàn)在要匹配出內(nèi)容包含中文但標(biāo)簽的屬性中不包含comment的標(biāo)簽中的漢字。解決思路如下:1、首先匹配出不包括comment的標(biāo)簽;2、在匹配結(jié)果中進(jìn)行二次匹配出中文;代碼如下:

```java

package com.mmq.regex;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

/**

* @use 匹配HTML的標(biāo)簽中的中文字符

* @ProjectName stuff

* @Author mumaoqiang

* @FullName com.mmq.regex.MatchChineseCharacters.java

* @JDK 1.6.0

* @Version 1.0

*/

public class MatchChineseCharacters {

/**

* 根據(jù)輸入的內(nèi)容,匹配出包含中文但不包含comment的標(biāo)簽中的中文字符

* @param source 要匹配的內(nèi)容

* @return 標(biāo)簽中的中文字符

*/

public static String matchChineseCharacters(String source) {

//匹配出包含中文但不包含comment的標(biāo)簽

String reg = "([^]*?[\\u4e00-\\u9fa5]+[^]*?)+(?=)";

Pattern pattern = Pattern.compile(reg);

Matcher matcher = pattern.matcher(source);

StringBuilder character = new StringBuilder();

while(matcher.find()){

String result = matcher.group();

System.out.println(result);

//對(duì)結(jié)果進(jìn)行二次正則,匹配出中文字符

String reg1 = "[\\u4e00-\\u9fa5]+";

Pattern p1 = Pattern.compile(reg1);

Matcher m1 = p1.matcher(result);

while(m1.find()){

character.append(m1.group());

}

//System.out.println(character.toString());

}

return character.toString();

}

public static void main(String[] args) {

String result = matchChineseCharacters("特432453543a1特123你好123嗎?特2標(biāo)簽中的文字");

System.out.println(result);

}

}

```

輸出結(jié)果如下:

```xhtml

a1特123你好123嗎?

標(biāo)簽中的文字

特你好嗎標(biāo)簽中的文字

```

這里做一下解釋:

```java

String reg = "([^]*?[\\u4e00-\\u9fa5]+[^]*?)+(?=)";

```

這個(gè)匹配內(nèi)容包含中文但標(biāo)簽的屬性中不包含comment的標(biāo)簽的正則中,不能使用向后查找?標(biāo)簽中屬性不確定,所以不能使用;[\\u4e00-\\u9fa5]+匹配中文字符串;而(?=)使用向前查找?=,在結(jié)果中不會(huì)包含結(jié)束標(biāo)簽。這個(gè)問題就這樣得到解決了。如果說要匹配指定標(biāo)簽中的指定內(nèi)容,那么也是很容易改進(jìn)的了。若有更好的正則,還請(qǐng)留言相互學(xué)習(xí)。PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的中文字符匹配java_java正则匹配HTML中a标签里的中文字符示例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。