Заменить одинарные кавычки Апострофом в строке (Ruby)
мои пользователи иногда вводят вместо Апострофа ('
), символы, которые выглядят как Апостроф (‘
), что вызывает некоторые проблемы с базой данных.
Я попытался заменить их на gsub
вот так:
result.gsub(/‘/, "'")
result.gsub(/‘/, "'")
ни один из этих параметров не работает-получение ошибки:
syntax error, unexpected $end, expecting ')'
return result.gsub(/‘/, "'").gsub("’", "'")
^
они зарезервированы Руби? Как их заменить?
3 ответов
Если ваш текстовый редактор не поддерживает символы UTF-8, такие как ‘
напрямую, вы можете избежать их таким образом:
"\u2018"
Итак, в вашем примере это будет:
result.gsub(/\u2018/, "'")
в дополнение к тому, что сказал @kiplantt, также работает следующее (Только что протестировано)
puts result.gsub(/(\`)/, "\'")