Watch Words будет распознавать слова в кавычках

Всем привет. Когда я использовал ключевые слова для автоматической отметки постов, содержащих определённые слова, обнаружил, что система помечает и те посты, в цитатах которых есть эти слова. Я попытался использовать регулярные выражения, чтобы избежать этого. Но есть ли у вас более удачные идеи?
Например:

[quote="好?, post:35, topic:197290, username:思源 xi 路"]
回购率蹭蹭上去。
[/quote]

Когда я ищу “xi”, система распознаёт “思源 xi 路”. Это сильно беспокоит нашу команду.
Вот регулярное выражение, которое я использовал:

(?<![a-zA-Z0-9])xi(?![a-zA-Z0-9 路])

Можно ли создать регулярное выражение, которое не будет помечать посты внутри цитат? Спасибо!

Более того, я надеюсь, что регулярное выражение будет распознавать содержимое цитаты, а не имя или имя пользователя.
:wink:

Я пытался решить эту проблему множеством способов, но, похоже, ChatGPT не может мне помочь. Может ли это быть связано с регулярными выражениями в Ruby?

Вы хотите, чтобы люди могли избегать ваших предупреждений

Я думаю, что регулярное выражение, скорее всего, ограничено строкой, поэтому вы не сможете использовать его для определения, находится ли строка внутри цитаты. Возможно, я ошибаюсь.

РЕДАКТИРОВАНИЕ: Я неправильно понял.

Вы просто хотите избегать помечать содержимое внутри тега [quote ... ], а не сам тег.

Это кажется законным запросом на новую функцию.

Я так не думаю:

Таким образом, я понимаю это как то, что должно/не должно игнорироваться:

[quote="игнорировать эту часть, пост:xyz, тема:abc, имя_пользователя:игнорировать_это_тоже"]
Не игнорируйте это
[/quote]
Определённо не игнорируйте это

Спасибо. Именно это я и хотел выразить.
Просто не знаю, как написать регулярное выражение для контроля этого.

Полагаю, что pfaffman прав, и это невозможно:


Я попробовал сам и не смог добиться того, что вы хотите, несмотря на корректное регулярное выражение, поэтому, похоже, здесь есть ограничение.