求助:取指定的字符串

kojie_chen 2009-12-24 10:45:19
$str1="北京(55,42)";=》55042
$str2="上海(等级7)(137,238)";==》137238
$str3="杭州(等级1)(137,38)";==》137038

$str4="老外(等级1)(1,1)";==》1001
坐标为三位的,总共6位,怎样取到坐标呢,坐标从1开始
...全文
131 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
t240034137 2009-12-25
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jnkc 的回复:]
PHP code<?phpfunction getstrnum($str) {preg_match('/(\d*),(\d*)/',$str,$r);return$r[1].substr('00'.$r[2],-3);
}echo getstrnum("北京(55,42)")."<br>";echo getstrnum("上海(等级7)(137,238)")."<br>";echo getstrnum("杭州(等级1)(137,38)")."<br>";echo getstrnum("老外(等级1)(1,1)")."<br>";?>
[/Quote]
江南昆虫的方法好,但是输出结果要改改! 假如是这样(5.42)就不行了.LZ你自己改吧
quzhongxiong 2009-12-24
  • 打赏
  • 举报
回复
你的头像不错,哈哈,抽空写了一个,看这个咋样
<?php
$str1="北京(55,42)";//=》55042
$str2="上海(等级7)(137,238)";//==》137238
$str3="杭州(等级1)(137,38)";//==》137038

$str4="老外(等级1)(1,1)";//==》1001

$pattern = '/\d{1,}[,]{1}\d{1,}/';
$str = '';
function match($string) {
global $pattern;
$newstr = preg_replace_callback($pattern,'test', $string);

return $newstr;
}
function test($match){
global $str;
$newarr = explode(',', $match[0]);
if ( is_array($newarr) ) {
$str .= $newarr[0].sprintf("%03d", $newarr[1])."<br />";
}
print_R("<br />");
}
match($str1);
match($str2);
match($str3);
match($str4);
print_R($str);
exit;
?>
kojie_chen 2009-12-24
  • 打赏
  • 举报
回复
	$last=strrpos($cid,'(');
$last2=strrpos($cid,')');
$last3=strrpos($cid,',');
$x=0;
$j=1;
for ($i=$last2-1;$i>$last3;$i--)
if ($cid[$i]!=',')
{
$x+=$cid[$i]*$j;
$j=$j*10;
}
$k=1000;
for ($i=$last3-1;$i>$last;$i--)
if ($cid[$i]!=',')
{
$x+=$cid[$i]*$k;
$k=$k*10;
}
echo $x
t240034137 2009-12-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jnkc 的回复:]
PHP code<?phpfunction getstrnum($str) {preg_match('/(\d*),(\d*)/',$str,$r);return$r[1].substr('00'.$r[2],-3);
}echo getstrnum("北京(55,42)")."<br>";echo getstrnum("上海(等级7)(137,238)")."<br>";echo getstrnum("杭州(等级1)(137,38)")."<br>";echo getstrnum("老外(等级1)(1,1)")."<br>";?>
[/Quote]
。。。。。正则原来这么简单! 开始学正则
江南昆虫 2009-12-24
  • 打赏
  • 举报
回复

<?php
function getstrnum($str) {
preg_match('/(\d*),(\d*)/',$str,$r);
return $r[1].substr('00'.$r[2], -3);
}
echo getstrnum("北京(55,42)")."<br>";
echo getstrnum("上海(等级7)(137,238)")."<br>";
echo getstrnum("杭州(等级1)(137,38)")."<br>";
echo getstrnum("老外(等级1)(1,1)")."<br>";
?>
t240034137 2009-12-24
  • 打赏
  • 举报
回复
我变成3个裤头了????? 加油早日星星
t240034137 2009-12-24
  • 打赏
  • 举报
回复

<?
$str1="北京(55,42)";
$str2="上海(等级7)(1,238)";
$a=explode('(',strrchr($str2,'('));
$b=explode(')',$a[1]);
$c=explode(',',$b[0]);
if(strlen($c[0])==3)
{
echo $c[0].$c[1];
}
else
{
if(strlen($c[0])==2)
{
echo $c[0].'0'.$c[1];
}
else
{
echo $c[0].'00'.$c[1];
}
}

我写的有点慢 别急呀
kojie_chen 2009-12-24
  • 打赏
  • 举报
回复
有人没有啊
kojie_chen 2009-12-24
  • 打赏
  • 举报
回复
跪求实现!写成函数~
t240034137 2009-12-24
  • 打赏
  • 举报
回复
可以呀
d4zxzgp 2009-12-24
  • 打赏
  • 举报
回复
???
kojie_chen 2009-12-24
  • 打赏
  • 举报
回复
有人么?

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧