将字符串(具有字母和字母数字值)分成两部分

Posted

技术标签:

【中文标题】将字符串(具有字母和字母数字值)分成两部分【英文标题】:Break a string (having alphabetic and alphanumeric values) in 2 parts 【发布时间】:2013-06-26 06:54:47 【问题描述】:

我需要将一个字符串分成两部分,例如,如果字符串是"4s5ee9f8fg",我需要它为"4598 seeffg"

我正在尝试这个:

$string2 = '132xx';
preg_match("/[0-9]+/",trim($string2),$result);
echo $result[0];
echo $result[1];

这里我只得到数字字符,而不是字母字符。

谁能给出解决方案?

【问题讨论】:

这个问题没有显示任何研究工作。 做好功课很重要。告诉我们您发现了什么以及为什么它不能满足您的需求。这表明您已经花时间尝试帮助自己,它使我们免于重复明显的答案,最重要的是它可以帮助您获得更具体和相关的答案。 FAQ. 检查substr()php方法 所以你想从字符串中提取数字? “我很懒,为我做[我的任务]”不是 *** 的工作方式 - 你至少应该尝试某事 我们可以看看你尝试过的例子吗? 【参考方案1】:

你所拥有的一切都在正确的轨道上。

您目前只尝试获取数字字符,这就是您所获得的全部内容的原因。此外,在使用不同的字符串进行一些测试后,结果表明您的特定正则表达式似乎仅在所有数字彼此相邻时才有效。我想出了一个用preg_replace 代替preg_match 的方法。

试试这个:

$string2 = '4s5ee9f8fg';
$result1 = preg_replace("/[A-z]+/", "", trim($string2));
$result2 = preg_replace("/[0-9]+/", "", trim($string2));
$finalResult = $result1." ".$result2;
echo $finalResult."\n";

【讨论】:

以上是关于将字符串(具有字母和字母数字值)分成两部分的主要内容,如果未能解决你的问题,请参考以下文章

Hive 查询以提取具有字母数字字符的列

根据字符串或字母将字符串拆分为多个值?

从混合字母和数字列熊猫中提取日期时间

具有至少 1 个数字和 1 个字符且固定长度为 11 的字母数字字符串的正则表达式

熊猫遍历行以查看值是不是为字母数字[重复]

T-SQL:在具有数字和字母的字符字段中获取最大数值