title: How to match all <li> elements of an html code
body: <p>This is what I came up with, but its selecting only some li elements from the demo text </p>
  
  <pre><code>&lt;li&gt;(.+?)&lt;/li&gt;
  </code></pre>
  
  <p>Demo text</p>
  
  <pre><code>&lt;li&gt;&lt;div class="tech-question"&gt;What is the most important feature of Java?&lt;/div&gt;&lt;div class="tech-answer"&gt;Java is a platform independent language.&lt;/div&gt;&lt;/li&gt;
  &lt;li&gt;&lt;div class="tech-question"&gt;What do you mean by platform independence?&lt;/div&gt;&lt;div class="tech-answer"&gt;Platform independence means that we can write and compile the java code in one
  platform (eg Windows) and can execute the class in any other supported platform
  eg (Linux,Solaris,etc).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="tech-question"&gt;What is a JVM?&lt;/div&gt;&lt;div class="tech-answer"&gt;JVM is Java Virtual Machine which is a run time environment for the compiled
  java class files.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="tech-question"&gt;Are JVM's platform independent?&lt;/div&gt;&lt;div class="tech-answer"&gt;JVM's are not platform independent. JVM's are platform specific run time
  implementation provided by the vendor.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="tech-question"&gt;What is the difference between a JDK and a JVM?&lt;/div&gt;&lt;div class="tech-answer"&gt;JDK is Java Development Kit which is for development purpose and it includes execution environment also. But JVM is purely a run time environment and hence you will not be able to compile your source files using a JVM.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div class="tech-question"&gt;What is a pointer and does Java support pointers?&lt;/div&gt;&lt;div class="tech-answer"&gt;Pointer is a reference handle to a memory location. Improper handling of
  pointers leads to memory leaks and reliability issues hence Java doesn't
  support the usage of pointers.&lt;/div&gt;&lt;/li&gt;
  </code></pre>