简体   繁体   中英

PHP preg_match_all: regular expression assistence

I have a question about expression. I've looked the forum through but I'm still stuck with the same problem. I found a sample on the php.net page which has an expression similar to what I'm looking for but still no success. What I'm trying to achieve is, to get words which are between {}. IE:

$html = '<h1>Hello {NAME_P}, today is {TODAY}.</h1>';

The expression I'm using is preg_match_all("/{[^}]*}/", $html, $hooks); but it returns 0 = Array .

I would like to have the strings NAME_P and TODAY as result.

Thanks in advance!

You need to capture them I believe. To do that, use brackets as follows:

preg_match_all("/{([^}]*)}/", $html, $hooks);
                  ^     ^

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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