用于屏蔽xyk的sed中的正则表达式

用于屏蔽xyk的sed中的正则表达式,第1张

概述我们需要屏蔽xyk号码.除了最后4位数之外的所有信息.我正在尝试使用SED.由于xyk号码长度从12位到19位不等,我正在尝试编写正则表达式.以下代码将接收字符串.如果它包含“CARD_NUMBER = 3737291039299199”形式的字符串,它将屏蔽前12位数字. 问题是如何为xyk写12到19位数的正则表达式?如果我写了12个数字的另一个表达式,它不起作用.这意味着对于12位数的xyk 我们需要屏蔽xyk号码.除了最后4位数之外的所有信息.我正在尝试使用SED.由于xyk号码长度从12位到19位不等,我正在尝试编写正则表达式.以下代码将接收字符串.如果它包含“CARD_NUMBER = 3737291039299199”形式的字符串,它将屏蔽前12位数字.
问题是如何为xyk写12到19位数的正则表达式?如果我写了12个数字的另一个表达式,它不起作用.这意味着对于12位数的xyk – 应该屏蔽前8个数字.对于15位数的xyk,应该屏蔽前11位数字.

while read data; do    var1=${#data}    echo "Length is "$var1    echo $data | sed -e "s/CARD_NUMBER=\[[[:digit:]]\{12}/CARD_NUMBER=\[\*\*\*\*\*\*\*\*/g"    done
解决方法 怎么样

sed -e :a -e "s/[0-9]\([0-9]\{4\}\)/\*/;ta"

(这在我的shell中有效,但你可能需要添加或删除反斜杠或两个.)我们的想法是用一个星号后跟四个数字替换一个数字后跟四位数字,并重复此 *** 作直到它不再触发.

总结

以上是内存溢出为你收集整理的用于屏蔽xyk的sed中的正则表达式全部内容,希望文章能够帮你解决用于屏蔽xyk的sed中的正则表达式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1021373.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存