Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正则表达式:节包含_Java_Regex - Fatal编程技术网

Java 正则表达式:节包含

Java 正则表达式:节包含,java,regex,Java,Regex,我需要知道字符串的某个部分是否包含特定的单词 例如: 搜索color=in 我将Java与String.matches结合使用仅根据您提供的示例测试用例,您可能可以使用如下简单的正则表达式: <font[^>]*color="[^"]+"[^>]*> 演示: 但是,正如注释中指出的,正则表达式通常不适合处理HTML。仅根据您提供的示例测试用例,您可以使用如下简单正则表达式: <font[^>]*color="[^"]+"[^>]*> 演示: 但

我需要知道字符串的某个部分是否包含特定的单词

例如: 搜索color=in


我将Java与String.matches结合使用

仅根据您提供的示例测试用例,您可能可以使用如下简单的正则表达式:

<font[^>]*color="[^"]+"[^>]*>
演示:


但是,正如注释中指出的,正则表达式通常不适合处理HTML。

仅根据您提供的示例测试用例,您可以使用如下简单正则表达式:

<font[^>]*color="[^"]+"[^>]*>
演示:


但是,正如注释中指出的,正则表达式通常不适合处理HTML。

对于解析HTML,最好使用正则表达式。要快速介绍,请从开始。

要解析HTML,最好使用。要快速介绍,请从开始。

尝试以下正则表达式:

(?<=\<)(\w+)[^<]*color.*?\>
演示:

提供示例文本后,它将打印包含所需字符串的标记的名称。在这种情况下,它将是font

尝试以下正则表达式:

(?<=\<)(\w+)[^<]*color.*?\>
演示:


提供示例文本后,它将打印包含所需字符串的标记的名称。在这种情况下,它将是font

您可以使用regex处理此问题,但这是危险的

另一方面,JSOUP用于该用例,非常易于使用

例如:


你可以用正则表达式处理这个问题,但这是危险的

另一方面,JSOUP用于该用例,非常易于使用

例如:


你想得到颜色的值吗?@Hackerdarshi否,我需要知道在这个用例中是否有一个带有颜色的HTML标记,JSoup似乎比正则表达式更健壮。你想得到颜色的值吗?@Hackerdarshi否,我需要知道在这个用例中是否有带有颜色的HTML标记,JSoup似乎比正则表达式更健壮。
public static void main(String[] argv) throws Exception {
  Document document = Jsoup.parse("<font id=\"myFont\" color=\"black\">");
  Elements font = document.select("font");
  for (Element element : font) {
    System.out.println(element.attr("color"));
  }

}
black