如何编写正则表达式来匹配 Javascript 对象名称?

How to write a regex to match a Javascript object name?

例如,考虑 Javascript 对象 document.I 希望用 "doc." 替换字符串 "document." 这样:

  1. 在 xyz.document.abc "document." 这样的情况下 不会 被替换。
  2. 当变量的形式为 predocument.xyz "document." 时 不会 被替换。
  3. 当出现document.abc或(document.abc或=document.abc或+document.abc等情况时"document."被替换

由于 Javascript 不支持 look behind 正则表达式,请提出替代方案

虽然最初 post 作为评论编辑,但我允许自己再次 post 我的解决方案作为答案,因为我不希望这个问题挂在某个地方,因为 "open"。另外,最初我认为有人会在一秒钟内提出更好的解决方案,但显然它从未发生过,所以你去吧:

([^\w.])document(?=[^\w]|\b)

并替换为

doc

Regex101 demo.