我有这个字符串
"Kuala Lumpur <br/>
53000 Setapak"
我想获得最后一个子串“setapak”,但有时字符串也看起来像
pantai jerjak <br/>
Gelugor
如何使用正则表达式获取最后一个子字符串?我试图用\ d +去掉数字但是没有工作,因为字符串总是不同(没有数字)。
有没有办法从正则表达式获取字符串,就像在substr?
中的否定一样答案 0 :(得分:0)
这将满足您的需求:
\w+$
\w
是“单词字符”的元字符,包括字母,数字和下划线。 +
说“一个或多个”,$
说“行尾”所以你可以用英语将其解释为:“匹配由字母,数字和下划线字符组成的单词结束了。“
如果你只想要字母,你可以这样做:
[a-zA-Z]+$
答案 1 :(得分:0)
$str = "Kuala Lumpur <br/> 53000 Setapak";
$str = preg_replace("/\s\w*$/", " setapak", $str);
echo $str;
<强>输出:强>
Kuala Lumpur <br/> 53000 setapak
(用小写改变首都“s”。