Note that there are some explanatory texts on larger screens.

plurals
  1. POJavascript Regex to Match Wikipedia Section Text
    text
    copied!<p>Given the text for a Wikipedia article (see <a href="http://test.wikipedia.org/w/index.php?title=Paris&amp;action=raw" rel="nofollow">http://test.wikipedia.org/w/index.php?title=Paris&amp;action=raw</a>), I would like to extract all sections needing citations. In Wikipedia markup, needing a citation is indicated by <code>{{Citation needed}}</code> and a section heading is indicated by either two equals signs for main sections (ex. <code>==Section 1==</code>) or three equals signs (ex. <code>===Section 1A===</code>) for subsections.</p> <p><strong>My regex:</strong></p> <pre><code>/(={2,3}[^==]+={2,3}[^==]+\{{2}Citation needed[^}}]*\}{2}[^==]*)(={2,3}[^==]+={2,3})?/g </code></pre> <p>My regex is working for many sections, but not for others, and I can't understand why. </p> <p><strong>DOES</strong> match:</p> <blockquote> <p>===Capital of France=== [[File:Elysée Palace, Paris 2005.jpg|thumb|right|The [[Élysée Palace]], residence of the [[President of France|French President]].]] Paris is the seat of France's national government. For the executive, the two chief officers each have their own official residences, which also serve as their offices. The [[President of France]] resides at the [[Élysée Palace]] in the [[8th arrondissement of Paris|8th arrondissement]], while the [[Prime Minister of France|Prime Minister]]'s seat is at the [[Hôtel Matignon]] in the [[7th arrondissement of Paris|7th arrondissement]]. Government ministries are located in various parts of the city; many are located in the 7th arrondissement, near the Matignon.</p> <p>The two houses of the French Parliament are also located on the [[Rive Gauche|Left Bank]]. The upper house, the [[Senate of France|Senate]], meets in the [[Palais du Luxembourg]] in the [[6th arrondissement of Paris|6th arrondissement]], while the more important lower house, the [[Assemblée Nationale]], meets in the [[Palais Bourbon]] in the [[7th arrondissement of Paris|7th]]. The [[List of Presidents of the French Senate|President of the Senate]], the second-highest public official in France after the President of the Republic, resides in the "Petit Luxembourg", a smaller palace annex to the [[Palais du Luxembourg]].{{Citation needed|date=June 2010}}</p> </blockquote> <p>Does <strong>NOT</strong> match:</p> <blockquote> <p>===Intercommunality=== Few of the above changes have taken into account Paris' existence as an [[agglomeration]]. Unlike in most of France's major urban areas such as [[Lille]] and [[Lyon]], there is no [[commune in France#Intercommunality|intercommunal]] entity in the Paris urban area, no intercommunal council treating the problems of the region's dense urban core as a whole; Paris' alienation of its suburbs is indeed a problem today, and considered by many {{Who|date=April 2011}} to be the main causes of civil unrest such as the suburban riots in 2005. A direct result of these unfortunate events is propositions for a more efficient metropolitan structure to cover the city of Paris and some of the suburbs, ranging from a socialist idea of a loose "metropolitan conference" (''conférence métropolitaine'') to the right-wing idea of a more integrated ''Grand Paris'' ("Greater Paris").</p> <p>One of the main reasons for such incoherence has been the fear felt by the French State in front of such a huge agglomeration and the desire to tap its wealth. {{Citation needed|date=April 2011}} Since the Middle Ages and particularly since the 1649 troubles (La Fronde), Paris has been considered as a source of danger. The authoritarian king Louis the XIVth built Versailles as a new political center, away from the dangerous city crowds. The conflict between the State and the City reached a climax with the Revolution of 1871 (La Commune) : the French Assembly in Bordeaux decided Paris would no longer be the capital city, while the Paris Commune discussed declaring Paris independent of France. Since then, one of the foundations of the centralized French State has been to widely distribute Paris wealth while depriving the agglomeration and keeping it divided into 8 departments and 1 200 communes. (For an analysis of the long hostility against Paris, see [http://www-ohp.univ-paris1.fr/] {{Verify source|date=April 2011}} ). Of the 22 metropolitan French regions, 19 are regularly subsidized — mostly by Paris resources — while Paris suburbs lack necessary equipment.</p> </blockquote> <p>What is wrong with my regex?</p> <h2>EDIT: New working regex below!</h2> <pre><code>/(={2,3}((?!==).)+={2,3}((?!==)[^])+\{{2}Citation needed((?!}})[^])*\}{2}((?!==)[^])*)/g </code></pre> <p>Explanation: Matches any section or subsection heading (==Section== or ===Subsection===) followed by anything that isn't two equals signs, then a {{Citation needed}}-like string, followed by everything else that isn't two equals signs.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload