0

几乎不需要帮助来形成一个正常工作的正则表达式(在 ruby​​ 中)以匹配带引号或不带引号的字符串。

用户可以提供的可能性:

filename.png title:Title
"file name with spaces" title:Title alt:"Alternative text"
"filename.png" title:"Title"

文件名部分应作为一组出现,其他所有内容作为另一组出现,例如

=> 1: filename.png 2: title:Title
=> 1: file name with spaces 2: title:Title alt:"Alternative text"
=> 1: filename.png 2: title:"Title"
4

1 回答 1

2

对你有用^(\"[\w\. ]+\"|[\w\.]+)(.*)$吗?

如果字符串以引号开头,请确保找到另一个,否则文件名中不允许有任何空格。

请注意,我只允许\w在您的文件名中使用单词字符、句点和(可选)空格。您可以替换\w\.为您想要匹配的任何有效字符(引号除外)。

于 2012-07-12T20:47:33.890 回答