Corresponde texto entre tags de cabeçalho

0

Eu quero corresponder o texto entre as tags de cabeçalho. Se o texto está combinando entre tags de cabeçalho, então é válido, mas se não for mais, então não é. Por exemplo,

String text_to_match= "abcd";
String allText = "<h1><a></a>abcd</h1>";----return true
String allText = "<h1 class='ssss'><a></a>abcd</h1>";----return true
String allText = "<h1 class='ssss'><a>dsdsd</a>abcd</h1>";---return false
String allText = "<h1 class='ssss'><a></a><span></span>abcd</h1>";----true
String allText = "<h1 class='ssss'><a></a><span>s</span>abcd</h1>";----false
String allText = "<h1 class='ssss'><a>ddd</a><any-tag>sss</any-tag>abcd</h1>";---false


<headertag 1-6> any tag may come but no text in between (text_to_match) </header tag 1-6>

Portanto, nenhum texto é permitido entre qualquer tag, exceto o texto a ser correspondido. Tags vazias são permitidas. O texto deve estar entre as tags de cabeçalho <h1>-----</h1> .

Eu procedi da seguinte forma, mas estou preso:

Pattern p_anchor = Pattern.compile("<h[1-6](?:(?!</h).)*>(\s|(&nbsp;))*(.*>)"+anchor+"(\s|&nbsp;)*<.*>(\s|(&nbsp;))*</.*><(?:(?!/h).)*/h[1-6]>");
Matcher m_anchor = p_anchor.matcher(allText);
    
por rahul 23.05.2018 / 08:24

0 respostas