import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?!(?!.*?<a)[^<]*<\\/a>)(?<!\")(?:(?:https?|ftp|file):\\/\\/|www\\.|ftp\\.|youtube\\.|youtu\\.be)[\\-A-Z0-9\\+\\&\\#\\/%=~_|$?!:;,\\.]*[A-Z0-9+&#\\/%=~_|$]";
final String string = "youtu.be/iwGFalTRHDA\n"
+ "youtube.com/watch?v=iwGFalTRHDA\n"
+ "www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "http://www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch?v=MoBL33GT9S8&feature=share\n"
+ "https://www.youtube.com/embed/watch?feature=player_embedded&v=iwGFalTRHDA\n"
+ "https://www.youtube.com/embed/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/embed/v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch/iwGFalTRHDA\n"
+ "http://www.youtube.com/attribution_link?u=/watch?v=aGmiw_rrNxk&feature=share\n"
+ "https://m.youtube.com/watch?v=iwGFalTRHDA\n\n\n"
+ "https://www.youtube.com/watch?v=DFYRQ_zQ-gk&feature=featured\n"
+ "https://www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "http://www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "//www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "https://youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "http://youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "//youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "youtube.com/watch?v=DFYRQ_zQ-gk\n\n"
+ "https://m.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "http://m.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "//m.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "m.youtube.com/watch?v=DFYRQ_zQ-gk\n\n"
+ "https://www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "http://www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "//www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n\n"
+ "https://www.youtube.com/embed/DFYRQ_zQ-gk?autoplay=1\n"
+ "https://www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "http://www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "//www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "https://youtube.com/embed/DFYRQ_zQ-gk\n"
+ "http://youtube.com/embed/DFYRQ_zQ-gk\n"
+ "//youtube.com/embed/DFYRQ_zQ-gk\n"
+ "youtube.com/embed/DFYRQ_zQ-gk\n\n"
+ "https://youtu.be/DFYRQ_zQ-gk?t=120\n"
+ "https://youtu.be/DFYRQ_zQ-gk\n"
+ "http://youtu.be/DFYRQ_zQ-gk\n"
+ "//youtu.be/DFYRQ_zQ-gk\n"
+ "youtu.be/DFYRQ_zQ-gk\n\n"
+ "https://www.youtube.com/HamdiKickProduction?v=DFYRQ_zQ-gk\n\n\n\n"
+ "\"https://youtu.be/yVpbFMhOAwE\",\n"
+ "\"https://www.youtube.com/embed/yVpbFMhOAwE\",\n"
+ "\"youtu.be/yVpbFMhOAwE\",\n"
+ "\"youtube.com/watch?v=yVpbFMhOAwE\",\n"
+ "\"http://youtu.be/yVpbFMhOAwE&t=2m\",\n"
+ "\"http://www.youtube.com/embed/yVpbFMhOAwE&t=2m5s\",\n"
+ "\"http://www.youtube.com/watch?v=yVpbFMhOAwE\",\n"
+ "\"http://www.youtube.com/watch?v=yVpbFMhOAwE&feature=g-vrec&t=30s\",\n"
+ "\"http://www.youtube.com/watch?v=yVpbFMhOAwE&feature=player_embedded\",\n"
+ "\"http://www.youtube.com/v/yVpbFMhOAwE?fs=1&hl=en_US\",\n"
+ "\"http://www.youtube.com/ytscreeningroom?v=yVpbFMhOAwE\",\n"
+ "\"http://www.youtube.com/watch?NR=1&feature=endscreen&v=yVpbFMhOAwE\",\n"
+ "\"http://www.youtube.com/user/Scobleizer#p/u/1/1p3vcRhsYGo\",\n"
+ "\"http://www.youtube.com/watch?v=6zUVS4kJtrA&feature=c4-overview-vl&list=PLbzoR-pLrL6qucl8-lOnzvhFc2UM1tcZA\",\n"
+ "\"https://www.youtube.com/watch?v=FZu097wb8wU&list=RDFZu097wb8wU\"\n\n\n"
+ "youtu.be/iwGFalTRHDA\n"
+ "youtube.com/watch?v=iwGFalTRHDA\n"
+ "www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "http://www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch?v=MoBL33GT9S8&feature=share\n"
+ "https://www.youtube.com/embed/watch?feature=player_embedded&v=iwGFalTRHDA\n"
+ "https://www.youtube.com/embed/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/embed/v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch/iwGFalTRHDA\n"
+ "http://www.youtube.com/attribution_link?u=/watch?v=aGmiw_rrNxk&feature=share\n"
+ "https://m.youtube.com/watch?v=iwGFalTRHDA\n\n\n\n"
+ "https://www.youtube.com/watch?v=DFYRQ_zQ-gk&feature=featured\n"
+ "https://www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "http://www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "//www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "www.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "https://youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "http://youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "//youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "youtube.com/watch?v=DFYRQ_zQ-gk\n\n"
+ "https://m.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "http://m.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "//m.youtube.com/watch?v=DFYRQ_zQ-gk\n"
+ "m.youtube.com/watch?v=DFYRQ_zQ-gk\n\n"
+ "https://www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "http://www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "//www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "www.youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n"
+ "youtube.com/v/DFYRQ_zQ-gk?fs=1&hl=en_US\n\n"
+ "https://www.youtube.com/embed/DFYRQ_zQ-gk?autoplay=1\n"
+ "https://www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "http://www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "//www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "www.youtube.com/embed/DFYRQ_zQ-gk\n"
+ "https://youtube.com/embed/DFYRQ_zQ-gk\n"
+ "http://youtube.com/embed/DFYRQ_zQ-gk\n"
+ "//youtube.com/embed/DFYRQ_zQ-gk\n"
+ "youtube.com/embed/DFYRQ_zQ-gk\n\n"
+ "https://www.youtube-nocookie.com/embed/DFYRQ_zQ-gk?autoplay=1\n\n\n"
+ "https://youtu.be/DFYRQ_zQ-gk?t=120\n"
+ "https://youtu.be/DFYRQ_zQ-gk\n"
+ "http://youtu.be/DFYRQ_zQ-gk\n"
+ "//youtu.be/DFYRQ_zQ-gk\n"
+ "youtu.be/DFYRQ_zQ-gk\n\n"
+ "https://www.youtube.com/HamdiKickProduction?v=DFYRQ_zQ-gk\n\n\n\n"
+ "https://www.youtube.com/feed/subscriptions\n"
+ "https://www.youtube.com/channel/UCgc00bfF_PvO_2AvqJZHXFg\n"
+ "https://www.youtube.com/c/NatGeoEdOrg/videos\n\n"
+ " youtu.be/iwGFalTRHDA\n"
+ "youtube.com/watch?v=iwGFalTRHDA\n"
+ "www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "http://www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch?v=MoBL33GT9S8&feature=share\n"
+ "https://www.youtube.com/embed/watch?feature=player_embedded&v=iwGFalTRHDA\n"
+ "https://www.youtube.com/embed/watch?v=iwGFalTRHDA\n"
+ "https://www.youtube.com/embed/v=iwGFalTRHDA\n"
+ "https://www.youtube.com/watch/iwGFalTRHDA\n"
+ "http://www.youtube.com/attribution_link?u=/watch?v=aGmiw_rrNxk&feature=share\n"
+ "https://m.youtube.com/watch?v=iwGFalTRHDA";
final String subst = "<a href=\"$0\">$0</a>";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE | Pattern.CASE_INSENSITIVE);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
}
}
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