繁体   English   中英

使用正则表达式关闭标签后得到单词? [重复]

[英]get word after a tag closing using regex? [duplicate]

这个问题已经在这里有了答案:

我有以下字符串

<strong>Test: </strong> BD-F5300

我对获取编号BD-F5300 数字可以是任何文字,数字。

任何帮助,我该如何获得? 谢谢。

您可以使用preg_replace

<?php
$str='<strong>Test: </strong> BD-F5300';
echo $str = preg_replace("~<(/)?strong>(.*?)<(/)?strong>~","", $str);

OUTPUT :

BD-F5300

enter image description here

在JavaScript中这样做:

var src = "<strong>Test: </strong> BD-F5300";
var reg = /.*<\/.*>\s*([a-zA-Z0-9-]+)/g;
var group = reg.exec(src);
console.log(group[1]+'\r\n'); //group[1] is what you want !

如果您只需要在</strong>之后获得一些内容,则可以使用:

preg_match('@</strong> (.+)@', $string, $matches);

所需的匹配项将在$matches[1] 但是,这要求<strong>标记和要查找的文本内容都在同一行上。 如果您想匹配多个倍数,则可能要使用preg_match_all

如果所需的最终文本的开头始终有一个空格,并且所需的实际数字文本中也没有任何空格,则可以通过执行以下操作避免使用正则表达式:

$str = '<strong>Test: </strong> BD-F5300';
$solution = substr($str, strrpos($str, ' ') + 1);
var_dump($solution);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM