import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(^127\\.0\\.0\\.1[\\s]+|^0\\.0\\.0\\.0[\\s]+)([0-9a-z_.-]+$)|^([0-9a-z_.-]+$)";
final String string = "# hpHosts - FSA only\n"
+ "#\n"
+ "# The following are hosts in the hpHosts database with the FSA classification ONLY.\n"
+ "#\n"
+ "127.0.0.1 localhost #IPv4 localhost\n"
+ "127.0.0.1 localhost\n"
+ "::1 localhost #IPv6 localhost\n"
+ "#\n"
+ "# BAD SITES START HERE\n"
+ "#\n"
+ "0.0.0.0 very#badexample.com\n"
+ "very#badexample.com\n"
+ "domain@with.com\n"
+ "doma$in\n"
+ "AuThedMine.cOm\n"
+ "domain.0cf\n"
+ "127.0.0.1 0-0-----------------------------------------------------------0.com\n"
+ "127.0.0.1 0-google.com\n"
+ "127.0.0.1 00-lawyer.com\n"
+ "127.0.0.1 0000.support\n"
+ "0.01.2.13.3.sydneypropertyinvestors.com\n"
+ "0.01.2.23.3.sydneypropertyinvestors.com\n"
+ "000.9.009.09.ekurbani.com\n"
+ "000.9.019.09.ekurbani.com\n"
+ "000000-0.000webhostapp.com\n"
+ "00004563.000webhostapp.com\n"
+ "000m8ih.wcomhost.com\n"
+ "000m8n1.wcomhost.com\n"
+ "000m8pk.wcomhost.com\n"
+ "000m9w3.wcomhost.com\n"
+ "000macu.wcomhost.com\n"
+ "000magu.wcomhost.com\n"
+ "000map9.wcomhost.com\n"
+ "000may2.wcomhost.com\n"
+ "000mhl7.wcomhost.com\n"
+ "000mhpe.wcomhost.com\n"
+ "000mhpg.wcomhost.com\n"
+ "1xbet86.com\n"
+ "1xbet87.com\n"
+ "1xbet90.com\n"
+ "1xbet31.com\n"
+ "1xbet46.com\n"
+ "1xbet28.com\n"
+ "1xbet35.com\n"
+ "1xbet49.com\n"
+ "nejakyhost.cz\n"
+ "0.0.0.0 cnhv.co\n"
+ "0.0.0.0 coin-hive.com\n"
+ "0.0.0.0 coinhive.com\n"
+ "0.0.0.0 authedmine.com\n"
+ "0.0.0.0 api.jsecoin.com\n"
+ "0.0.0.0 load.jsecoin.com\n"
+ "0.0.0.0 server.jsecoin.com\n"
+ "0.0.0.0 miner.pr0gramm.com\n"
+ "0.0.0.0 minemytraffic.com\n"
+ "0.0.0.0 crypto-loot.com\n"
+ "0.0.0.0 cryptaloot.pro\n"
+ "0.0.0.0 cryptoloot.pro\n"
+ "0.0.0.0 coinerra.com\n"
+ "0.0.0.0 coin-have.com\n"
+ "0.0.0.0 minero.pw\n"
+ "0.0.0.0 minero-proxy-01.now.sh\n"
+ "0.0.0.0 minero-proxy-02.now.sh\n"
+ "0.0.0.0 minero-proxy-03.now.sh\n"
+ "0.0.0.0 api.inwemo.c\n"
+ "127.0.0.1 sfdfsdfsdfsdfsd\n"
+ "pool.pebblemedia.adhese.com";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html