В Regex, как я могу глобально заменить только первый соответствующий символ * после * соответствующей группы захвата - PullRequest
0 голосов
/ 25 февраля 2020

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

Я пытался использовать следующее регулярное выражение:

\(?<=img_.*)"+?\g

, но все кавычки после img_ в каждая строка была выбрана, включая кавычки вокруг "533". Как мне сопоставить кавычки после .jpg без совпадения с другими кавычками?

<img class="confluence-embedded-image confluence-content-image-border" height="399" src="img_78.jpg" width="533" />

<img class="confluence-embedded-image confluence-content-image-border" height="399" src="img_78.jpg" width="533" />

<img class="confluence-embedded-image confluence-content-image-border" height="399" src="img_78.jpg" width="533" />

Я хочу избежать использования .jpg, потому что этот .jpg может быть многими другими вещами (.png, .jpeg, et c). Я хочу получить первую цитату после img_ независимо от того, что находится между img_ и цитатой.

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

1 Ответ

0 голосов
/ 26 февраля 2020

Как сопоставить кавычки после .jpg без совпадения с другими кавычками?

\.jpg(")

Ссылка

I Я хочу избежать использования .jpg, потому что этот .jpg может быть многим другим (.png, .jpeg, et c). Я хочу получить первую цитату после img_ независимо от того, что находится между img_ и цитатой.

img_.*?(")

Ссылка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...