我正在尝试找到一种方法来规范化字符串以将其作为文件名传递。
到目前为止我有这个:
my_string.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n, '').downcase.gsub(/[^a-z]/, '_')
但第一个问题: - 字符。我想这种方法存在更多问题。
我不控制名称,名称字符串可以有重音、空格和特殊字符。我想删除所有这些,用相应的字母('é' => 'e')替换重音,然后用'_'字符替换其余部分。
名字是这样的:
- “Prélèvements - 常规”
- 《健康证》
- ...
我希望它们像一个没有空格/特殊字符的文件名:
- “prelevements_routine”
- “carnet_de_sante”
- ...
谢谢您的帮助 :)