const regex = /(?!\b(sapkowski|wiedźmin|tomek|bagiński)\b)(([\u0100-\u017F])|(acz|acze|acza|aczy|aczowi|aczom|aczem|aczami|aczu|aczach|adam|adamy|adasz|adacie|ada|adali|adaliby|adajmy|adaj|adajcie|adany|adana|adane|adani|adano|adanie|ak|akowi|akom|akiem|akami|aku|akach|aki|alnia|alnie|alni|alniom|alniami|alniach|alnio|anin|anie|anina|aninowi|anom|aninem|anami|aninie|anach|anka|anki|anek|ankom|ankami|ankach|anko|arka|arki|arkowu|arkow|arkoma|arkam|arku|arkami|arkach|arek|arkom|arko|arnia|arnie|arni|arniom|arniami|arniach|arnio|arz|arze|arza|arzy|arzowi|arzom|arzem|arzami|arzu|arzach|aci|atego|atemu|atej|atych|atym|atymi|atych|awy|awe|awa|awi|awego|awemu|awej|awych|awym|awymi|cami|cach|cja|cje|cji|cyj|cjom|cje|cjami|cjach|cjo|cka|cki|ckie|ccy|ckiego|ckiemu|ckiej|ckich|ckim|ckimi|cku|cz|czyk|czycy|czyki|czyka|czykowi|czykom|czyka|czykiem|czykami|czyku|czykach|czyni|czynie|czyniom|czyniami|czyniach|czyzna|czyzny|czyzn|czyznom|czyznami|czyznach|czyzno|dziej|dzieje|dzieja|dziei|dziejowi|dziejom|dziejem|dziejami|dzieju|dziejach|ec|ek|ki|ka|kowi|kom|kiem|kami|ku|kach|elnia|elnie|elni|elniom|elniami|elniach|elnio|ica|icom|icami|icach|iczny|iczne|iczna|iczni|icznego|icznej|icznych|icznemu|icznym|icznymi|iec|ika|ikowi|ikom|ikiem|ikami|iku|ikach|iki|inie|inom|inami|inach|isko|iska|isek|isku|iskom|iskiem|iskami|iskach|izm|izmy|izmu|izmowi|izmom|izmem|izmami|izmie|izmach|jad|jady|jada|jadowi|jadom|jadem|jadami|jadzie|jadach|kolwiek|logie|logii|logiom|logiami|logiach|mierz|mierze|mierza|mierzy|mierzowi|mierzom|mierzem|mierzami|mierzu|mierzach|nica|nicy|nicom|nicami|nicach|nico|nie|nia|niu|niom|niem|niami|niach|nika|nikowi|nikom|nikiem|nikami|niku|nikach|niki|ninowi|ninem|ninie|nach|nego|nemu|nej|nych|nymi|odporny|odporne|odporna|odporni|odpornego|odpornemu|odpornej|odpornych|odpornym|odpornymi|olowi|olami|olach|ocie|otami|ocie|otach|owiec|owcy|owca|owcowi|owcom|owcem|owcami|owcu|owcach|owcze|owce|owy|owe|owa|owi|owego|owemu|owej|owych|owym|owymi|ów|owowi|owie|ówka|ówki|ówek|ówce|ówkom|ówkami|ówkach|ówko|pedie|pedii|pedyj|pediom|pediami|pediach|pedio|podobny|podobne|podobna|podobni|podobnego|podobnemu|podobnej|podobnych|podobnym|podobnymi|ska|skie|scy|skiego|skiej|skiemu|skich|skich|skimi|sku|stwo|stwa|stw|stwu|stwom|stwem|stwami|stwie|stwach|szczyzna|szczyzny|szczyzn|szczyznom|szczyznami|szczyznach|szczyzno|szy|sze|sza|szego|szemu|szej|szych|szym|szymi|unek|wód|wody|wodu|wodów|wodowi|wodom|wodem|wodami|wodzie|wodach|yca|yce|ycy|ycom|ycami|ycach|yco|yczny|yczne|yczna|yczni|ycznego|ycznemu|ycznej|ycznych|ycznym|ycznymi|ysko|yska|ysek|ysku|yskom|yskiem|yskami|ysku|yskach|ujemy|ujesz|ujecie|uje|ywali|ywaliby|ujmy|uj|ujcie|ywany|ywana|ywane|ywani|ywano|ywanie|zka|zki|zkie|zcy|zkiego|zkiemu|zkiej|zkich|zkim|zkich|zkimi|zku|znawstwo|znawstwa|znawstew|znawstwu|znawstwom|znawstwem|znawstwami|znawstwie|znawstwach)\b)+/g;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('(?!\\b(sapkowski|wiedźmin|tomek|bagiński)\\b)(([\\u0100-\\u017F])|(acz|acze|acza|aczy|aczowi|aczom|aczem|aczami|aczu|aczach|adam|adamy|adasz|adacie|ada|adali|adaliby|adajmy|adaj|adajcie|adany|adana|adane|adani|adano|adanie|ak|akowi|akom|akiem|akami|aku|akach|aki|alnia|alnie|alni|alniom|alniami|alniach|alnio|anin|anie|anina|aninowi|anom|aninem|anami|aninie|anach|anka|anki|anek|ankom|ankami|ankach|anko|arka|arki|arkowu|arkow|arkoma|arkam|arku|arkami|arkach|arek|arkom|arko|arnia|arnie|arni|arniom|arniami|arniach|arnio|arz|arze|arza|arzy|arzowi|arzom|arzem|arzami|arzu|arzach|aci|atego|atemu|atej|atych|atym|atymi|atych|awy|awe|awa|awi|awego|awemu|awej|awych|awym|awymi|cami|cach|cja|cje|cji|cyj|cjom|cje|cjami|cjach|cjo|cka|cki|ckie|ccy|ckiego|ckiemu|ckiej|ckich|ckim|ckimi|cku|cz|czyk|czycy|czyki|czyka|czykowi|czykom|czyka|czykiem|czykami|czyku|czykach|czyni|czynie|czyniom|czyniami|czyniach|czyzna|czyzny|czyzn|czyznom|czyznami|czyznach|czyzno|dziej|dzieje|dzieja|dziei|dziejowi|dziejom|dziejem|dziejami|dzieju|dziejach|ec|ek|ki|ka|kowi|kom|kiem|kami|ku|kach|elnia|elnie|elni|elniom|elniami|elniach|elnio|ica|icom|icami|icach|iczny|iczne|iczna|iczni|icznego|icznej|icznych|icznemu|icznym|icznymi|iec|ika|ikowi|ikom|ikiem|ikami|iku|ikach|iki|inie|inom|inami|inach|isko|iska|isek|isku|iskom|iskiem|iskami|iskach|izm|izmy|izmu|izmowi|izmom|izmem|izmami|izmie|izmach|jad|jady|jada|jadowi|jadom|jadem|jadami|jadzie|jadach|kolwiek|logie|logii|logiom|logiami|logiach|mierz|mierze|mierza|mierzy|mierzowi|mierzom|mierzem|mierzami|mierzu|mierzach|nica|nicy|nicom|nicami|nicach|nico|nie|nia|niu|niom|niem|niami|niach|nika|nikowi|nikom|nikiem|nikami|niku|nikach|niki|ninowi|ninem|ninie|nach|nego|nemu|nej|nych|nymi|odporny|odporne|odporna|odporni|odpornego|odpornemu|odpornej|odpornych|odpornym|odpornymi|olowi|olami|olach|ocie|otami|ocie|otach|owiec|owcy|owca|owcowi|owcom|owcem|owcami|owcu|owcach|owcze|owce|owy|owe|owa|owi|owego|owemu|owej|owych|owym|owymi|ów|owowi|owie|ówka|ówki|ówek|ówce|ówkom|ówkami|ówkach|ówko|pedie|pedii|pedyj|pediom|pediami|pediach|pedio|podobny|podobne|podobna|podobni|podobnego|podobnemu|podobnej|podobnych|podobnym|podobnymi|ska|skie|scy|skiego|skiej|skiemu|skich|skich|skimi|sku|stwo|stwa|stw|stwu|stwom|stwem|stwami|stwie|stwach|szczyzna|szczyzny|szczyzn|szczyznom|szczyznami|szczyznach|szczyzno|szy|sze|sza|szego|szemu|szej|szych|szym|szymi|unek|wód|wody|wodu|wodów|wodowi|wodom|wodem|wodami|wodzie|wodach|yca|yce|ycy|ycom|ycami|ycach|yco|yczny|yczne|yczna|yczni|ycznego|ycznemu|ycznej|ycznych|ycznym|ycznymi|ysko|yska|ysek|ysku|yskom|yskiem|yskami|ysku|yskach|ujemy|ujesz|ujecie|uje|ywali|ywaliby|ujmy|uj|ujcie|ywany|ywana|ywane|ywani|ywano|ywanie|zka|zki|zkie|zcy|zkiego|zkiemu|zkiej|zkich|zkim|zkich|zkimi|zku|znawstwo|znawstwa|znawstew|znawstwu|znawstwom|znawstwem|znawstwami|znawstwie|znawstwach)\\b)+', 'g')
const str = `sapkowski annie tomek polska wiedźmin iedźmin`;
// 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