我有一个字符串,我需要将其分成两部分 - 由于它是一个 PHP 语言文件,所以它们各不相同。希望有人能帮忙,字符串是:
$_LANG['FIELD1'] = "FIELD2";
我需要获取 FIELD1 和 FIELD2
最佳答案
应该这样做:
# 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
和 positive lookbehind :
$ grep -Po "(?<=_LANG\[')[^']*" file
FIELD1
$ grep -Po '(?<=_LANG\[.FIELD1.\] = ")[^"]*' file
FIELD2
关于linux - 从字符串中抓取特定的文本部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14202619/