一个正则表达式的写法

在线等一个正则表达式的写法不好意思,对这个确实不熟悉。value是objextTest for use dbnameTest for use

在线等一个正则表达式的写法
不好意思,对这个确实不熟悉。

value是objext=Test for use dbname=Test for use error=101
或者是objext=Test1 Test=Test2 error=102
或者是objext=Test1 for use dbinstance=Test2 for use2 error=103

现在要写一个正则把objext后面到下一个field如(dbname,Test或者dbinstance之间的东西取出来,包括空格)

如上面3个匹配完就是

Test for use
Test1
Test for use

多谢了!

[解决办法]

Perl code
$_ = "objext=Test for use database_name=Test2 for use error_code=1001.00 ";m/objext=(.+?)\w+=/;print("$1\n");
[解决办法]


正则表达式为:objext=(.+?) (?:dbname|Test|dbinstance)

[解决办法]
没想出来1步怎么做:
Perl code
use strict;use warnings;my $value="objext=Test for use dbname=Test for use error=101";my @values=split(/\w+=/,$value);shift(@values);my @fields=($value=~/(\w+?)=/g);foreach (0..$#fields){        print("$fields[$_] => $values[$_]\n");}