0

我有一个字符串,我需要提取两个部分 - 它们因 PHP 语言文件而异。希望有人可以提供帮助,字符串是:

$_LANG['FIELD1'] = "FIELD2";

我需要抓住 FIELD1 和 FIELD2

4

2 回答 2

2

这应该这样做:

# space seperated
$ sed -n "s/.*_LANG\['\([^']*\)'] = .\(\w*\).*/\1 \2/p" file
FIELD1 FIELD2

# newline seperated 
$ sed -n "s/.*_LANG\['\([^']*\)'] = .\(\w*\).*/\1\n\2/p" file
FIELD1
FIELD2

或使用grep积极的后视

$ grep -Po "(?<=_LANG\[')[^']*" file
FIELD1

$ grep -Po '(?<=_LANG\[.FIELD1.\] = ")[^"]*' file
FIELD2
于 2013-01-07T19:31:45.800 回答
1
awk -F "[\"']" '{ print $2, $4 }' file
于 2013-01-08T04:50:10.647 回答