Как я могу достигнуть соответствия при использовании preg_replace в PHP?

PyCharm извлекает типы из строки @type pydoc. См. Здесь PyCharm docs здесь и здесь и Epydoc docs . Он находится в разделе «legacy» PyCharm, возможно, ему не хватает функциональности.

class King:
    def repress(self, peasant):
        """
        Exploit the workers by hanging on to outdated imperialist dogma which
        perpetuates the economic and social differences in our society.

        @type peasant: Person
        @param peasant: Person to repress.
        """
        peasant.knock_over()   # Shows a warning. And there was much rejoicing.

Соответствующая часть - это строка @type peasant: Person строки docstring.

Мое намерение не чтобы украсть очки у CrazyCoder или оригинального вопросника, непременно дайте им свои очки. Я просто подумал, что простой ответ должен быть в слоте «ответ».

53
задан Andy Lester 29 July 2013 в 11:09
поделиться

4 ответа

Необходимо поместить шаблон в круглые скобки /([A-Z])/, как это:

preg_replace("/([A-Z])/", "<span class=\"initial\">$1</span>", $str)
52
ответ дан Andrew 7 November 2019 в 08:42
поделиться

\0 будет также соответствовать всему подобранному выражению, не делая явного получения с помощью круглой скобки.

preg_replace("/[A-Z]/", "<span class=\"initial\">\\0</span>", $str)

Как всегда, можно перейти в , php.net/preg_replace или php.net/<whatever ищет term> искать документацию быстро. Quoth документация:

\0 или 0$ обращается к тексту, подобранному целым шаблоном.

29
ответ дан HamZa 7 November 2019 в 08:42
поделиться

От preg_replace документация на php.net:

замена может содержать ссылки формы \n или (начиная с PHP 4.0.4) $n с последней формой, являющейся предпочтительной. Каждая такая ссылка будет заменена текстом, полученным заключенным в скобки шаблоном n'th.

Посмотрите пример Flubba.

8
ответ дан Wedge 7 November 2019 в 08:42
поделиться

Используйте круглые скобки вокруг желаемого захвата.

5
ответ дан 7 November 2019 в 08:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: