我正在尝试拆分我从telnet服务中获取的字符串,该服务放入引号,文件名的末尾包含空格,如果没有空格,则不包括引号。所有其他字段都用空格分隔,因此没有真正的问题。
我正在尝试(可能过于雄心勃勃!)在Regex小组中全力以赴。并不是说它有很多影响,但我使用的是Perl。
引用字符串的示例是:
“RAW Superleague backchat 0907 1531”movie / DV / DV100 63173952000 576000 15:21:35:24 16:34:43:01
和不带引号的字符串可能是:
F0736584_02电影/ DV / DV100 9172224000 576000 16:04:19:00 16:14:55:24
我正在使用正则表达式:
/ ^ “?(。*)” $?\ S(\ S +)\ S(\ S +)\ S(\ S +)\ S(\ S +)\ S(\ S +)/
在组中返回带引号的字符串,但不返回没有引号的第二个字符串。我认为可选标志会处理这个,但似乎没有。任何帮助赞赏。
答案 0 :(得分:0)
因为第二行不以空格开头。试试这个:
/^"?(.*)"$?\s?(\S+)\s(\S+)\s(\S+)\s(\S+)\s(\S+)/
^----------- new