php正则截取指定符号之间的字符串?

举例:
$str="击҉链器【到手】得理多】";

要获取的数据是: 到手】得理多

也就是【】之间的字符串,但是之间的字符串里有可能包含:】,请问怎么取到第一个【和最后一个】之间的字串?

按照你的要求截取第一个【和最后一个】之间的字符串的php程序如下

(用正则表达式中的贪婪匹配模式,取第一捕获组的数据)

<?php

 $str="击链器【到手】得理多】";

 $regex="/【(.*)】/";

 preg_match_all($regex,$str,$result);

 echo $result[1][0];

?>

温馨提示:内容为网友见解,仅供参考
无其他回答

php正则截取指定符号之间的字符串?
按照你的要求截取第一个【和最后一个】之间的字符串的php程序如下 (用正则表达式中的贪婪匹配模式,取第一捕获组的数据)<?php str="击链器【到手】得理多】";regex="\/【(.*)】\/";preg_match_all($regex,$str,$result);echo $result[1][0];?> ...

php求正则表达式。提取指定开头字符串和指定结束字符串之间的一段字符...
preg_match('\/yu.*cv\/',$temp1,$m);echo $m[0];

php用正则表达式怎么获得两个字符串之间字符
把要获得的正则表达式部分加上括号,然后看preg_match第三个参数,括号是第几个,获得的内容就在$matches中的索引就是几.比如:<?php subject = 'abcd123def';$pattern = '\/(\\w)(\\d+)(\\w)\/';preg_match(pattern,subject,matches );var_dump (matches );\/\/ 自己看 ...

正则表达式如何剔除两个字符之间的内容
id="index_nav"; $preg='\/id="(.*)"\/isU'; preg_match_all($preg,$id, $arr); print_r($arr);正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则...

怎么用php正则获得a标签内的文字啊
php中正则匹配只要使用这两个函数:preg_match_all preg_match 这里使用preg_match_all,代码如下:subject = 'abc测试'; \/\/ 假设这是需要匹配的字符串$pattern = '\/]*>(.*)<\\\/a>\/'; \/\/ 这是匹配的正则表达式preg_match_all($pattern, $subject, $matches); \/\/ 开始匹配,该...

PHP中如何用正则表达式分离出某个关键词前后的文字?
function cnsubstr($str,$strlen=10) {\/\/截取函数 if(empty($str)||!is_numeric($strlen)){ return false;} if(strlen($str)<=$strlen){ return $str;} \/\/得到第$length个字符 并判断是否为非中文 若为非中文 \/\/直接返回$length长的字符串 last_word_needed=substr($str,$strlen-1,1)...

php正则表达来获取html中的部分内容
说明:int preg_match ( string pattern, string subject [, array matches [, int flags]] )在 subject 字符串中搜索与 pattern 给出的正则表达式相匹配的内容。 返回值0或1。(3)preg_replace -- 执行正则表达式的搜索和替换 (4)preg_split -- 用正则表达式分割字符串 2. 一般来说,如果...

PHP中如何用正则表达式分离出某个关键词前后的文字?
下面这样:str='你文章的内容,里面可能有许多的域名的';preg_match_all('|(.{,100})域名(.{,100})|', $str, $reg);匹配之后,每一个域名前的100个字符在$reg[1]数组里面,后面的100个字符在数组$reg[2]里面。

php中正则匹配字符串中的指定字符
<?php$str = "0502-cpd-wx-html-new-01";$str = preg_replace('\/^([^\\-]+\\-){4}([^\\-]+)\\-[^\\-]+$\/','$2',$str);echo $str;?>

php正则匹配开头和最后之间的字符串
preg_match_all('\/^\\[\\w+\\](.*)\\[\\w+\\]$\/iU',$a,$array);echo '';print_r($array);

相似回答