R - 从字符串中删除数字后的任何内容

时间:2015-09-08 08:19:55

标签: php

如何在四位数后删除姓名,我的字母总是在4位数后开始,

假设我的字符串名称是

2015 ABC
2016 XYZ
2015 ABCD
ABC 2015 BOS

我想删除ABC,XYZ,ABCD,BOS

我想只打印

  2015
  2015
  2015 
  ABC 2015 

3 个答案:

答案 0 :(得分:0)

您可以使用正则表达式来执行此操作。

有大量的在线资料,教程甚至测试人员可以帮助您。

只是Google “正则表达式”

这是一个非常简单的例子,可以做你想要的:

$string = 'ABC 2015 BOS';
$newString = preg_replace('/([0-9]+) [A-Za-z ]+/','$1',$string);

答案 1 :(得分:0)

试试这个:检查上面列出的所有例子

preg_replace('/\s+([\S]*)$/', '', $string)

答案 2 :(得分:0)

如果你确定单词是用空格分隔的,你可以使用explode()将你的字符串剪切成单词,然后删除last和implode()。

<?php

$lines = [
"2015 ABC",
"2016 XYZ",
"2015 ABCD",
"ABC 2015 BOS"];

foreach ($lines as $line) {
    $words = explode(" ", $line);
    unset($words[count($words) -1]);

    $filtered = implode($words, " ");
    print($filtered. "\n");
}

以前的代码将完全按照您的要求打印:

2015
2016
2015
ABC 2015