我的电子表格中的列包含以下数据:
5020203010101/FIS/CASH FUND/SBG091241212
我需要在转发斜杠(/)之后提取字符串的最后一部分,即;的 SBG091241212
我尝试了以下正则表达式,但它似乎不起作用:
\/.*$
任何想法?
答案 0 :(得分:3)
试试这个:
'/(?<=\/)[^\/]*$/'
您当前的REGEXP失败的原因是因为您的.*
指令也匹配斜杠,因此它会锚定到第一个斜杠并提供其后的所有内容(FIS / CASH FUND / SBG091241212)。
答案 1 :(得分:1)
答案 2 :(得分:1)
如果没有reg ex:
,你可以这样做<?php
echo end(explode('/', '5020203010101/FIS/CASH FUND/SBG091241212'));
?>
答案 3 :(得分:1)
您需要使用括号指定匹配组才能提取内容。
preg_match("/\/([^\/]+)$/", "5020203010101/FIS/CASH FUND/SBG091241212", $matches);
echo $matches[1];
答案 4 :(得分:1)
这将做一个积极的lookbehind并匹配一个不包含斜杠的值
像这样[^\/]*?(?<=[^\/])$
这只会突出显示匹配。即网址的最后一部分
答案 5 :(得分:0)
你可以爆炸&#39;字符串:
$temp = explode('/',$input);
if (!empty($temp)){
$myString = $temp[count($temp)-1];
}
答案 6 :(得分:0)
您也可以使用:
$string = '5020203010101/FIS/CASH FUND/SBG091241212';
echo basename($string);