Php preg_match代码用于分割以数字结尾的字符串

时间:2017-09-20 13:15:30

标签: php regex drupal-7

考虑基于以下内容的字符串: 1.可以包含任何字母数字字符 2.字符串以数字结尾

现在使用preg_match($expression, $subject, $parts)我希望以一种方式拆分字符串,使得结尾数字和字符串的其余部分分别存储在 $ parts 数组中。

例如:kim2bn88应该分为两部分:kim2bn和88

但我无法弄清楚正则表达式。请帮助!

2 个答案:

答案 0 :(得分:1)

您正在搜索的正则表达式必须使用结束边界“$”。

var buf = Convert.FromBase64String(File.ReadAllText(@"base64string.txt"));

int count = 0;
var buf2 = buf.GroupBy(x => count++ / 4)
            .Select(g => (byte)(967.644334f * BitConverter.ToSingle(g.ToArray(), 0)))
            .ToArray();

File.WriteAllBytes(@"base64string.mp3", buf2);

如果您想避免拆分,请在此搜索旁边尝试此双“组并提取”:

/(\d+)$/

$ parts将包含" 88"," 8"," 8"。数组的第一项将是整个数字子集,然后是每个数字一项。

答案 1 :(得分:0)

我认为你想要一个如下正则表达式:

/^(\w+)(\d+)$/

假设您在最终数字之前总是有非数字。

这为您提供了两个捕获组。第一个是字符串开头的单词字符(字母数字+ _)。第二个是字符串末尾的数字。