import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "\\/\\*[^*]*\\*+(?:[^/*][^*]*\\*+)*\\/|\\/\\/.*";
final String string = "import android.content.res.Resources;\n"
+ " import android.os.Handler;\n"
+ " import android.preference.PreferenceFragment;\n"
+ " import android.view.ViewGroup;\n"
+ " * Provides the regex to identify domain HTTP(S) protocol and/or 'www' sub-domain.\n"
+ " *\n"
+ " * Used to format user-facing {@link String}'s in certain preferences.\n"
+ " */\n"
+ " public static final String ADDRESS_FORMAT_REGEX = \"^(https?://(w{3})?|www\\\\.)\";\n\n"
+ " /**\n"
+ " // Used to ensure that settings are only fetched once throughout the lifecycle of the fragment\n"
+ " private boolean mShouldFetch;\n\n"
+ " public View onCreateView(@NonNull LayoutInflater inflater,\n"
+ " ViewGroup container,\n"
+ " Bundle savedInstanceState) {\n"
+ " // use a wrapper to apply the Calypso theme\n"
+ " Context themer = new ContextThemeWrapper(getActivity(), R.style.Calypso_SiteSettingsTheme);\n"
+ " LayoutInflater localInflater = inflater.cloneInContext(themer);\n"
+ " View view = super.onCreateView(localInflater, container, savedInstanceState);\n\n"
+ " if (view != null) {\n"
+ " setupPreferenceList((ListView) view.findViewById(android.R.id.list), getResources());\n"
+ " }\n\n"
+ " return view;\n"
+ " }\n\n"
+ " @Override\n"
+ " public void onChildViewAdded(View parent, View child) {\n"
+ " if (child.getId() == android.R.id.title && child instanceof TextView) {\n"
+ " // style preference category title views\n"
+ " TextView title = (TextView) child;\n"
+ " WPPrefUtils.layoutAsBody2(title);\n"
+ " } else {\n"
+ " // style preference title views\n"
+ " TextView title = (TextView) child.findViewById(android.R.id.title);\n"
+ " if (title != null) WPPrefUtils.layoutAsSubhead(title);\n"
+ " }\n"
+ " }\n\n"
+ " @Override\n"
+ " public void onChildViewRemoved(View parent, View child) {\n"
+ " // NOP\n"
+ " }\n\n"
+ " @Override";
final Pattern pattern = Pattern.compile(regex);
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