gpt4 book ai didi

php - 我可以从字符串中删除随机数字和字母吗?但只保留重要的

转载 作者:行者123 更新时间:2023-11-29 21:10:16 25 4
gpt4 key购买 nike

好吧,我知道我可以使用preg_replace从字符串中删除字母和数字。但这就是我想做的。

我正在使用一个名为Engage forms的 WordPress 插件,它将提交的数据存储在 mySQL 数据库中。

棘手的部分是,由于某种原因,正在提交的数据没有被干净地存储。(原因是开发人员为此添加了一些紫珀,我无法弄清楚他们如何在没有未知数字和字母的情况下打印出来。)

这就是我的意思:
我提交数据

  • 名字:彼得
  • 姓氏:斯托玛
  • 电子邮件:storm@ren.com
  • 电话:0736997385
<小时/>

以下是 mySQL 数据库内的数据的外观及其在网页上的打印方式:

非常困惑

a:4:{s:18:"名字25601459863853";s:5:"彼得";s:23:"lastnamn77151459863853";s:8:"Stormare";s:19:"电子邮件58511459863853";s: 13:"Storm@ren.com";s:21:"phone22101459863853";s:10:"0736997385";}

<小时/>

我尝试清理数据

所以我尝试利用我的一点知识并尽可能多地获取:

$patterns = array();
$patterns[0] = '/[{}]/';
$patterns[1] = '/[a-x]:[0-9]/';
$patterns[2] = '/[0-9]:/';
$patterns[3] = '/[a-x]:/';
$patterns[4] = '/[":"]/';
$patterns[5] = '/;/';
$patterns[6] = '/namn[1]/';
$replacements = array();
$replacements[2] = '';
$replacements[1] = '';
$replacements[0] = '';
$replacements[3] = '';
$replacements[4] = ' ';
$replacements[10] = ''

echo preg_replace($patterns, $replacements, $leadslist);

现在应该输出:

名字25601459863853彼得姓氏77151459863853 Stormare电子邮件58511459863853 Storm@ren.com电话22101459863853 0736997385

<小时/>

大问题

现在我是否可以定位名字和其余后面的随机数字,而无需删除电话号码? (示例电话号码为 0736997385。

<小时/>

可能的解决方案

最佳解决方案atm由用户:Pei-turn提交。

他向我展示了如何删除任何大于 10 位数字的数字。在 Preg_replace() 中使用此模式

$patterns[3] = '/[0-9]{0,9}[0-9]{11,}/';

这非常有效。我唯一担心的是一些数据是否可能由于 future 奇怪的表单提交而被删除。

最佳答案

电话号码有 10 位数字,请尝试删除所有短于 10 和长于 10 的数字序列

[0-9]{0,9}[0-9]{11,}

关于php - 我可以从字符串中删除随机数字和字母吗?但只保留重要的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36444475/

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