Linux 从字符串中获取文本的特定部分
我有一个字符串,我需要抓取两个部分-它们不同,因为它是一个PHP语言文件。希望有人能帮忙,字符串是:Linux 从字符串中获取文本的特定部分,linux,bash,sed,awk,grep,Linux,Bash,Sed,Awk,Grep,我有一个字符串,我需要抓取两个部分-它们不同,因为它是一个PHP语言文件。希望有人能帮忙,字符串是: $_LANG['FIELD1'] = "FIELD2"; 我需要抓取字段1和字段2,这应该可以: # space seperated $ sed -n "s/.*_LANG\['\([^']*\)'] = .\(\w*\).*/\1 \2/p" file FIELD1 FIELD2 # newline seperated $ sed -n "s/.*_LANG\['\([^']*\)']
$_LANG['FIELD1'] = "FIELD2";
我需要抓取字段1和字段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”(?这应该可以做到:
# 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”(?不幸的是,这会删除所有内容。我得到零output@cbcp该解决方案经过测试,因此我怀疑实际文件在某些方面与示例略有不同,因此发布实际文件;啊,是的,我写了$LANG_uu,这就是区别。不幸的是,这删除了所有内容。我得到零output@cbcp解决方案经过测试,因此我怀疑实际文件在某些方面与示例略有不同,因此发布实际文件。下面是一个示例:$\u LANG['all']=“all”;啊,是的,我写了$LANG,这就是差异所在。
awk -F "[\"']" '{ print $2, $4 }' file