我在bash中有以下代码片段,用于处理JSON文件。我想在python中执行完全相同的功能。我可以从python中调用sed
吗?或者我如何实现同样的目标。
for file in /home/Work/ts_parts/*
do
event=$(cat $file | jq '.Event')
name="$(basename "$file")"
if [[ "$event" =~ "aaa.bbb.ccc.dddd" ]] || [[ "$event" =~ "eeee.ffff.gggg.hhhh" ]]; then
echo "Coming Here"
jq ".url = \"$(jq '.Msg' $file | sed 's/.*proxy=\([^&]*\).*/\1/')\"" $file > ts_parts/out_$name
else
jq ".url = null" $file > ts_parts/out_$name
fi
rm -f $file
done
答案 0 :(得分:0)
您可以使用正则表达式:
import re
s = "abc proxy=123&456" # Test string
mat = re.search(r'proxy=([^&]*)', s)
print(mat.group(1)) # 123
此代码仅执行sed替换(提取)的功能。您还需要执行的脚本中的任何其他内容,或直接调用程序。