Как удалить одинарную кавычку из строки, используя REGEX - PullRequest
0 голосов
/ 13 марта 2019

Я использовал это ниже выражение

s/^'|'$//

Просто я ожидаю нижеприведенного результата

'value' -> value (без одинарных кавычек)

но в моем выражении результат дается как value', он удаляет только первое вхождение.Как я могу это исправить?

1 Ответ

3 голосов
/ 13 марта 2019

Как прокомментировали @ WiktorStribiżew и @lurker, без модификатора /g оператор s/// будет работать только в первом (слева направо) совпадении, которое ему соответствует.См. perlretut для получения дополнительной информации.

В качестве альтернативы может быть проще запустить его как два регулярных выражения (это обычно делается для реализаций trim):

do { s/^'//; s/'$// } for $val;
...