gpt4 book ai didi

php - 如何使用正则表达式替换字符串中的数字

转载 作者:太空宇宙 更新时间:2023-11-04 06:22:17 25 4
gpt4 key购买 nike

我对正则表达式很陌生,所以我在替换字符串中的数字时感到困惑。

a="12ab34cde56" 

我想用 12abXXcde56 替换它

b="abc1235ef"

我想用abcXXXXef替换它

c="1ab12cd"

我想用1abXXcd替换它

我正在用 python 和 php 尝试这些,但没有成功。这就是我的想法:

^([0-9]+)([a-z]+)(.*)([a-z]+)([0-9]+)$

最佳答案

您可以使用此正则表达式来捕获所有非前导或尾随的数字:

(?<!^|\d)\d+(?!$|\d)

然后在 Python 中,您可以提供一个函数,用相应数量的 X 替换匹配项。

对于 PHP,您可以启用 PREG_OFFSET_CAPTURE 以了解匹配项的位置,并循环遍历匹配项列表并处理它们。

请注意,使用上面的正则表达式 "5 ddds" 将更改为 "X ddds"

关于php - 如何使用正则表达式替换字符串中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11291089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com