正则表达式 - 匹配所有单词但仅匹配唯一单词一次

Iso*_*rph 7 regex

是否可以使用正则表达式匹配所有单词但只匹配一次唯一单词?我知道有其他方法可以做到这一点,但我有兴趣知道这是否可以使用正则表达式.

例如,我目前有以下表达式:

(\w+\b)(?!.*\1)
Run Code Online (Sandbox Code Playgroud)

和以下字符串:

glass shoes door window door glasses. window glasses
Run Code Online (Sandbox Code Playgroud)

在大多数情况下,表达式起作用并匹配以下单词:

shoes
door 
window
glasses
Run Code Online (Sandbox Code Playgroud)

这有两个问题:

  1. 正在使用"glass"在"眼镜"上进行子串的匹配,这是不正确的.

  2. "眼镜"和"眼镜".应该匹配,但目前不匹配.

最后的比赛应该是:

shoes 
door 
window 
glasses 
glass 
Run Code Online (Sandbox Code Playgroud)

mač*_*ček 8

非常接近,只是\b在负向前瞻中阅读

/(\w+\b)(?!.*\1\b)/
Run Code Online (Sandbox Code Playgroud)

Rubular上看到它