相关疑难解决方法(0)

Ruby中的正则表达式负面看起来似乎不起作用

制作一个参数解析器.我想将一个字符串拆分成一个数组,", "除了前面的分隔符"|".这意味着字符串

"foo, ba|, r, arg"
Run Code Online (Sandbox Code Playgroud)

应该导致

`["foo", "ba|, r", "arg"]`
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用这个正则表达式:(?<!\|),它在http://regexhero.net/tester/中有效,但是当我尝试时

args.split(/(?<!\|), /)
Run Code Online (Sandbox Code Playgroud)

在ruby中,我收到一个错误: undefined (?...) sequence: /(?<!\|), /

ruby regex string negative-lookbehind lookbehind

6
推荐指数
1
解决办法
2504
查看次数

标准化文件名的字符串,删除重音和特殊字符

我正在尝试找到一种规范化字符串的方法,将其作为文件名传递.

到目前为止我有这个:

my_string.mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n, '').downcase.gsub(/[^a-z]/, '_')
Run Code Online (Sandbox Code Playgroud)

但第一个问题: - 性格.我想这种方法存在更多问题.

我不控制名称,名称字符串可以有重音符号,空格和特殊字符.我想删除所有这些,用相应的字母('é'=>'e')替换重音,并用"_"字符替换其余部分.

名字如下:

  • "Prélèvements - Routine"
  • "Carnetdesanté"
  • ...

我希望它们像一个没有空格/特殊字符的文件名:

  • "prelevements_routine"
  • "carnet_de_sante"
  • ...

谢谢您的帮助 :)

ruby regex string ruby-on-rails ruby-on-rails-3

5
推荐指数
1
解决办法
4069
查看次数

文件/文件夹名称的无效字符过滤器?(红宝石)

我的脚本从网上下载文件,然后将它们保存在从同一个Web服务器获取的名称下.我需要在Windows NTFS下为文件/文件夹名称过滤 /删除无效字符.

我也很乐意使用多平台过滤器.

注意:类似的东西htmlentities会很棒....

ruby filenames

4
推荐指数
2
解决办法
5527
查看次数