我有一个类似setSuperValue('sdfsdfd')
的字符串,我需要从这一行得到'sdfsdfd'
值。怎么做?
首先我通过setSuperValue
找到行,然后只得到目标内容的字符串-setSuperValue('sdfsdfd')
。如何构建regexp以从此行获取sdfsdfd
?
最佳答案
这应该对你有帮助
grep setSuperValue myfile.txt | grep -o "'. *'" | tr -d "'"
grep -o
将返回以一个“开始”和另一个“结束”的所有文本,包括两个引号。然后使用tr
去掉引号。您也可以使用
cut
: grep setSuperValue myfile.txt | cut -d"'" -f2
或
awk
: grep setSuperValue myfile.txt | awk -F "'" '{print $2}'
这将拆分单引号所在的行并返回第二个值,这就是您要查找的值。
关于linux - Bash正则表达式查找字符串的一部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33153441/