const regex = /\/\\*[^*]*\\*+(?:[^\/*][^*]*\\*+)*\/|\/\/.*/g;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('\\\/\\\\*[^*]*\\\\*+(?:[^\\\/*][^*]*\\\\*+)*\\\/|\\\/\\\/.*', 'g')
const str = `import android.content.res.Resources;
import android.os.Handler;
import android.preference.PreferenceFragment;
import android.view.ViewGroup;
* Provides the regex to identify domain HTTP(S) protocol and/or 'www' sub-domain.
*
* Used to format user-facing {@link String}'s in certain preferences.
*/
public static final String ADDRESS_FORMAT_REGEX = "^(https?://(w{3})?|www\\\\.)";
/**
// Used to ensure that settings are only fetched once throughout the lifecycle of the fragment
private boolean mShouldFetch;
public View onCreateView(@NonNull LayoutInflater inflater,
ViewGroup container,
Bundle savedInstanceState) {
// use a wrapper to apply the Calypso theme
Context themer = new ContextThemeWrapper(getActivity(), R.style.Calypso_SiteSettingsTheme);
LayoutInflater localInflater = inflater.cloneInContext(themer);
View view = super.onCreateView(localInflater, container, savedInstanceState);
if (view != null) {
setupPreferenceList((ListView) view.findViewById(android.R.id.list), getResources());
}
return view;
}
@Override
public void onChildViewAdded(View parent, View child) {
if (child.getId() == android.R.id.title && child instanceof TextView) {
// style preference category title views
TextView title = (TextView) child;
WPPrefUtils.layoutAsBody2(title);
} else {
// style preference title views
TextView title = (TextView) child.findViewById(android.R.id.title);
if (title != null) WPPrefUtils.layoutAsSubhead(title);
}
}
@Override
public void onChildViewRemoved(View parent, View child) {
// NOP
}
@Override`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
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 JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions