2017-02-01 4 views
-2

Ich möchte eine Seitenquelle überprüfen, um die Anzahl der Vorkommen des Wortes "http" im Grunde nicht zu überprüfen, um zu bestätigen, dass die Seitenquelle nicht gefunden wurde. t wurde geändert.Gleichen Sie eine bestimmte Anzahl von Vorkommen eines Strings ab

zum Beispiel würde Ich mag die folgende Quelle testen und die Tatsache überein, dass http 4 mal gekommen ist

<html>the following page http://example.com/a 

describes links that can also be found 
here, <a href="http://example.com/a"> here: http://example.com/a </a> and http://example.com/a 
</html> 

Was ist ein Beispiel regex, die die vier Vorkommen von http passen würde?

+0

Sie möchten die Anzahl der doppelten Link erhalten? Könnten Sie bitte spezifisch sein und Ihre Frage mit mehr Details aktualisieren? – AbhiNickz

+0

perl -e 'undef $ /; $ content = ; $ zählen = 0; while ($ content = ~/http/g) {$ count ++;} drucken "$ count \ n";' test –

+0

'perl -00 -nE '@x = $ _ = ~/\ bhtml \ b/ig; sag skalar @ x;' file.txt' – Toto

Antwort

2

Sie müssen Ihre Suche gruppieren und 4 Mal verwenden. Zum Beispiel

/(http.*){4}/s 

Matches, wenn der Begriff http mindestens 4-mal enthalten.

Der s-Modifikator am Ende würde sicherstellen, dass. * Auch Newlines entspricht

+0

Vielen Dank, das ist genau das, was ich wollte, ich konnte es nirgendwo finden. Wird einige Tests durchführen und in einer Weile akzeptieren. – Kerridge0

Verwandte Themen