Как выйти из $ в PHP, использующем preg_replace?

Вы можете использовать tf.unstack в outputs, чтобы получить список «субтеноров», затем использовать tf.split для каждого из них:

splitted_outputs = [tf.split(output, rate, axis=0) for output in tf.unstack(outputs, axis=0)]

Обратите внимание, что tf.unstack можно использовать только таким образом, когда известен размер данного axis, или в противном случае вам потребуется указать параметр num.

6
задан Alan Moore 4 August 2013 в 12:00
поделиться

5 ответов

Я бы настоятельно рекомендовал вместо этого использовать preg_quote () .

12
ответ дан 8 December 2019 в 05:23
поделиться

Знак $ должен быть экранирован сам по себе, поэтому

$tmpStr=preg_replace("/$$/", "\$", $tmpStr);

я бы также посоветовал посмотреть на addlashes вместо.

4
ответ дан 8 December 2019 в 05:23
поделиться

IIRC вы заменяете $ на $. Так что это должно быть $$

. Вы также можете попробовать

$tmpStr=preg_replace('/\$/', '\$', $tmpStr);
0
ответ дан 8 December 2019 в 05:23
поделиться

не правда ли, что PHP видит \ $ как $? Я не проверял это, это может выглядеть так:

php первый и заменяет ваш "/ \ $ /" на "/ $ /" тогда механизм preg делает свое дело ... к сожалению, $ является оператором регулярного выражения (я полагаю, что он соответствует концу строки?), поэтому он не находит $ -символы в вашем тексте, но будет

Я думаю, , что вам нужно сделать, это двукратно экранировать символ $ следующим образом:

$ tmpStr = preg_replace ("/ \ $ /", "\ $", $ tmpStr);

Также .. в этом случай, я бы просто использовал str_replace ()

0
ответ дан 8 December 2019 в 05:23
поделиться

Похоже, что ваша проблема связана с экранированием. Одинарные кавычки (') в PHP работают иначе, чем двойные кавычки ("). Это очень похоже на Perl, где интерполяция переменных не происходит в строках с одинарными кавычками, а знак доллара ($) не является метасимволом:

print "\$"; # prints $
print '\$'; # prints \$

Также, классы символов Perl упростят ваш код:

$tmpStr = preg_replace('/([?#^&*()$\\/])/', '\\\\$1', $tmpStr);
3
ответ дан 8 December 2019 в 05:23
поделиться
Другие вопросы по тегам:

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