Skip to content
Advertisement

Contact Form 7 content explode by regular expressions

I have a contents of ‘Contact Form 7’ that I got from WP post. It looks something like this:

Your Name (required)
[text* your-name]

Your Email (required)
[email* your-email]

Subject
[text your-subject]

Your Message
[textarea your-message]

[submit "Send"]

I need to explode this content to an array by regular expressions. At the end of the process it should look like this:

$arr = array ( 
'text* your-name',
'email* your-email',
'text your-subject',
'textarea your-message',
'submit "Send"',
)

Does anyone have an idea how to do it by using regular expressions or any other way? Thanks 🙂

Advertisement

Answer

(?<=[)([^]]+)

Try this.Grab the capture.See demo.

http://regex101.com/r/yP3iB0/8

$re = ""(?<=\[)([^\]]+)"";
$str = "Your Name (required)n[text* your-name]nnYour Email (required)n[email* your-email]nnSubjectn[text your-subject]nnYour Messagen[textarea your-message]nn[submit "Send"]";

preg_match_all($re, $str, $matches);
User contributions licensed under: CC BY-SA
10 People found this is helpful
Advertisement