在形成一个正常工作的正则表达式(在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"
答案 0 :(得分:2)
^(\"[\w\. ]+\"|[\w\.]+)(.*)$
是否适合您?
如果字符串以引号开头,则确保找到另一个,否则您将禁止文件名中的任何空格。
请注意,我只允许文件名中包含单词字符\w
,句点和(可选)空格。您可以将\w\.
替换为您想要匹配的任何有效字符(除了引号)。