开发者

Cherry pick numbers from a paragraph only if there is a certain word on that line

From the following prose, I want to extract a list of numbers from any -line- that contains the letters "HTML". html could be upper case or lower case.

So here's the psuedo code: text = getline() if text contains html match any numbers from text return array of matches

Any ideas how to do this in REG Ex?

===============

HTML email is still … a great marketing tool if used properly. The key is to test, test,
 test to see if your subscribers prefer 5 it over text based email. If you are unsu开发者_C百科re your
 subscribers can read HTML email, then offer both text-based email and HTML 7 email, to 
cater to both audiences.

In my Part $254,000 of this article, I will discuss “How to create and send an HTML email 
form” to increase the interactivity of your subscribers and boost the response rate in your
 email marketing campaigns. retro 50's 

=============


First check if there is html in the string, then match all digits:

if (preg_match("/html/i", $input)) {
    preg_match_all("/\b(\d+)\b/", $input, $m);
}
print_r($m);


Sample solution:

$line=strtolower($line);
$x = preg_match("/html.*(\d+)/",$line,$match) || preg_match("/(\d+).*html/",$line,$match);
if($x)echo "number in line: ".$match[1];

Assumes only one number in line. Definitely not the best way to do it, but you really should learn regex yourself - it's not that hard.

See also http://www.regular-expressions.info/


^((\d+)|.)*(HTML|html)((\d+)|.)*$

Getting the capture groups right might be a little tricky, but just mess around a little.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜