Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

Please, what is the correct php code, using a regex pattern, to get $result from $string?

$string = 'xmlns(ns=http://testurl.com/now)xpointer(//section/datePublished/text())';
preg_match($regex, $string, $result);

Output:

$result = array(
    'xmlns' => 'ns=http://testurl.com/now',
    'xpointer' => '//section/datePublished/text()'
);

Brackets can be recursive (as text()).

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
724 views
Welcome To Ask or Share your Answers For Others

1 Answer

Use /(w+)((.*?))(?=w+(|$)/ regex pattern that match any string before parentheses and string in () after it.

preg_match_all("/(w+)((.*?))(?=w+(|$)/", $string, $m);
$result = array_combine($m[1], $m[2]);

Check result in demo


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...