使用 sed 替换数字

Replace digits using sed

我希望将给定字符串中等号后的所有数字替换为文本 'NULL'。我刚开始使用 sed。如何使用 sed 获得所需的输出?

示例 1:

Input: /getProduct?productId=1234&quanity=4  
Output: /getProduct?productId=NULL&quantity=NULL

示例 2:

Input: /getCustomers?customerId=432  
Output: /getCustomers?customerId=NULL

谢谢。

尝试

echo "/getProduct?productId=1234&quanity=4" | sed -E 's/[0-9]+/NULL/g'
  • [0-9]+:一个或多个数字
  • g:适用于所有比赛

在输入文件上使用 sed -r 's/(=)([0-9]+)/NULL/g' inputfile.txt

/getProduct?productId=1234&quanity=4
/getCustomers?customerId=432
/getCustomers3?customerId=432

我们得到:

/getProduct?productId=NULL&quanity=NULL
/getCustomers?customerId=NULL
/getCustomers3?customerId=NULL

只更改等号后面出现的数字。