正则表达式用于匹配引用和未引用的文本与属性

时间:2012-07-12 20:41:25

标签: ruby regex

在形成一个正常工作的正则表达式(在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"

1 个答案:

答案 0 :(得分:2)

^(\"[\w\. ]+\"|[\w\.]+)(.*)$是否适合您?

如果字符串以引号开头,则确保找到另一个,否则您将禁止文件名中的任何空格。

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