1
0
mirror of https://github.com/erusev/parsedown.git synced 2023-08-10 21:13:06 +03:00

Compare commits

...

3 Commits
0.4.6 ... 0.4.7

Author SHA1 Message Date
a4fb0651d5 resolve #27 2013-11-13 01:07:39 +02:00
50a58eab16 Merge pull request #29 from hkdobrev/multi-line-emphasis
Allow multi-line emphasis. Fix #28.
2013-11-12 12:46:05 -08:00
1f347e17eb Allow multi-line emphasis. Fix #28. 2013-11-12 19:22:17 +02:00
5 changed files with 30 additions and 6 deletions

View File

@ -678,14 +678,14 @@ class Parsedown
if (strpos($text, '_') !== FALSE)
{
$text = preg_replace('/__(?=\S)(.+?)(?<=\S)__/', '<strong>$1</strong>', $text);
$text = preg_replace('/_(?=\S)(.+?)(?<=\S)_/', '<em>$1</em>', $text);
$text = preg_replace('/__(?=\S)(.+?)(?<=\S)__(?!_)/s', '<strong>$1</strong>', $text);
$text = preg_replace('/_(?=\S)(.+?)(?<=\S)_/s', '<em>$1</em>', $text);
}
if (strpos($text, '*') !== FALSE)
{
$text = preg_replace('/\*\*(?=\S)(.+?)(?<=\S)\*\*/', '<strong>$1</strong>', $text);
$text = preg_replace('/\*(?=\S)(.+?)(?<=\S)\*/', '<em>$1</em>', $text);
$text = preg_replace('/\*\*(?=\S)(.+?)(?<=\S)\*\*(?!\*)/s', '<strong>$1</strong>', $text);
$text = preg_replace('/\*(?=\S)(.+?)(?<=\S)\*/s', '<em>$1</em>', $text);
}
$text = strtr($text, $map);

View File

@ -4,4 +4,8 @@
<p>Here's <em>one that uses underscores</em>. </p>
<p>Here's <strong>a strong one that uses underscores</strong>.</p>
<p>This is not _ one _ neither is * this * neither is _ this_ neither is _this _.</p>
<p>An empty emphasis ** is not __ an emphasis.</p>
<p>An empty emphasis ** is not __ an emphasis.</p>
<p>A <em>multi-line
emphasis</em></p>
<p>A <strong>multi-line
strong emphasis</strong></p>

View File

@ -10,4 +10,10 @@ Here's __a strong one that uses underscores__.
This is not _ one _ neither is * this * neither is _ this_ neither is _this _.
An empty emphasis ** is not __ an emphasis.
An empty emphasis ** is not __ an emphasis.
A *multi-line
emphasis*
A **multi-line
strong emphasis**

View File

@ -0,0 +1,5 @@
<p><strong><em>em strong</em></strong></p>
<p><strong><em>one</em> at the start</strong></p>
<p><strong>one at the <em>end</em></strong></p>
<p><strong>one <em>in the</em> middle</strong></p>
<p><strong>one with <em>asterisks</em></strong></p>

View File

@ -0,0 +1,9 @@
___em strong___
___one_ at the start__
__one at the _end___
__one _in the_ middle__
**one with *asterisks***